2

Linq を使用して、特定のオブジェクトの .ToString() メソッドを持つすべてのパブリック変数を検索できるかどうかを確認しようとしています。

基本的に、2 つのパラメーターを提供したいと考えています。List<T>検索するものと、文字列を含む 1 つ以上のパブリック変数を持つオブジェクトのstring返されるものです。List<T>

を使用して、オブジェクトのすべてのパブリック プロパティを取得できます。

Type objectType = _data[0].GetType();
var properties = objectType.GetProperties(BindingFlags.Public | BindingFlags.Instance)
var fields = objectType.GetFields(BindingFlags.Public | BindingFlags.Instance)

しかし、これを使用して、すべてのオブジェクトとそのすべてのプロパティをループせずにオブジェクトのリストを検索する方法にこだわっています。

4

2 に答える 2

0
var type = objectToCheck.GetType();
bool isMethodExist = type.GetMethod(methodName) != null;

あなたが持っている場合List<T>

var type = _data.GetType().GetGenericArguments()[0];
bool isMethodExist = type.GetMethod(methodName) != null;
于 2013-10-18T14:17:47.143 に答える