1

一連の項目をリストした XML ファイルがありますが、これらの項目はコード内で名前で参照されることがよくあります。

Visual Studio 内でリフレクションを使用して、このリストをインテリジェンスのように「アクセス可能」にする方法はありますか? 私は以前にそれが行われたのを見たことがあります - そして、それはばかげて難しいと確信していますが、少なくとも尋ねることは害にはならないと思います.

4

2 に答える 2

1

彼はインテリジェンスを使ってc#コードからxmlにアクセスしたいと思っています。

私の推測では、xmlフィールドのプロパティを持つc#クラスを生成するある種のコードジェネレーターを構築する必要があると思います...VisualStudioがリソースファイルのコードを生成する方法のようなものです。

于 2010-03-14T20:48:59.580 に答える
1

これにはリフレクションを使用しないことをお勧めします。

コードが複雑になることは別として、誰かがXMLを変更してコードを実行させ、彼らが望むことを実行するようにコードを悪用する可能性もあります(インジェクション攻撃を考えてください)。

通常どおりXMLを解析することをお勧めしますが、大きなif / switchステートメントを使用して、コードの実行方法を定義します。そうすれば、問題を見つけて入力を検証する可能性が高くなります。

文字列から関数呼び出しまでは素晴らしいように聞こえますが、お尻に噛み付くでしょう。

于 2010-03-14T20:51:25.393 に答える