2011-01-31 41 views
0

文字列として渡されたコードを実行したいとき、実行時にコードが渡されます。これは、関数として文字列として渡すことができるサンプルコードです。vbscript evalに相当するvb.net eval関数はありますか

pが、このコードはasp.netページ

p.Tables(0).Rows(0)("disp_status") = "Approved by CEO"; 
p.Tables(0).Rows(0)("status") = "Approved"; 
Session("fnc") = "generate po"; 
Session("rec_id") = p.Tables(0).Rows(0)("IndexID"); 
Session("ord_ref")="PR No."; 
Server.Execute("../rlm/mne_pr_form_f.asp"); 
p.Tables(0).Rows(0)("status") = "Order Raised" 
p.Tables(0).Rows(0)("disp_status") = "Order Raised" 
p.Tables(0).Rows(0)("lock_record") = "Yes"; 
Session("fnc") = ""; 
Session("rec_id") = ""; 
+0

eval関数は汎用言語では邪悪です。 javascriptはサンドボックス化されていても問題ありませんが、他のデスクトップアプリケーションの場合、攻撃者は何でもできる文字列を作成できます。 –

答えて

3

など一切Eval機能はありませんで実行されますが、あなたがしたい正確に何に依存している、と宣言し、いくつかの値を持っているされたデータセットであり、 Reflectionを使用してこのようなことを行うことができます。ここには、これを行うためのライブラリを含むCodeProjectの記事があります。Runtime Compilation (A .NET eval statement)

関連する問題