- PR -

実行時の動的な式の評価

1
投稿者投稿内容
るいるい
常連さん
会議室デビュー日: 2004/08/01
投稿数: 21
投稿日時: 2005-01-19 14:55
みなさんこんにちは。
VBScript では、Eval 関数があり、実行時に動的に式を評価して結果を戻すことができます。これと同等の機能は.Net Framework でないのでしょうか。

私なりに探してみたのですが、見つかりませんでした。
愚問かもしれませんが、ご教授いただければ幸いです。
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2005-01-19 15:21
ありません。動的 という言葉の意味によりますが
kanai
ベテラン
会議室デビュー日: 2004/09/13
投稿数: 98
投稿日時: 2005-01-19 15:29
コンパイラの性質上、動的にコードを評価するようなプログラムは作成できません。
したがって、Eval関数はスクリプト言語(VBScript、JScript)でしか実行できません。

ただし、なんらかのDB(AccessやSQL Serverなど)が使用できる環境あれば、
"SELECT (式)"
などのSQLを実行して動的に式を評価できます。(邪道かもしれませんが)
Hongliang
ぬし
会議室デビュー日: 2004/12/25
投稿数: 576
投稿日時: 2005-01-19 15:32
これなど参考になるかも知れません。
http://dobon.net/vb/melma/dotnet34.txt

//VsaEngineは.NET 2.0ではobsoleteになるようですが。
るいるい
常連さん
会議室デビュー日: 2004/08/01
投稿数: 21
投稿日時: 2005-01-20 10:50
みなさん、いろいろとありがとうございます。

遅ればせながら補足ですが、テキストボックスなどに入力をした計算式を動的に計算して、その結果を表示したかったんです。

Hongliang に教えていただいたサイトにある、「JScript.NETのEvalを使う方法」を試してみました。問題なく動きそうです。
ただし、動的にソースを生成して、コンパイルするのでパフォーマンスが気になりますが。これについては、追って調査してみようと思います。

VsaEngine がいいなと思ったのですが、obsolete 扱いになってしまうのでは、ちょっと手を出しにくいですね。
1

スキルアップ/キャリアアップ(JOB@IT)