リフレクションであるプロパティにアクセスしたい。
var qry = typeof(Foo).type.GetProperties(BindingFlags.Public|BindingFlags.Instance);
だとsetプロパティがないのもとれてしまう・・・。
ここのTimさんの投稿見た。
using System.Linq; using System.Reflection;
忘れずに。
var qry = typeof(Foo).GetProperties(BindingFlags.Instance | BindingFlags.Public).Where(p => p.CanRead && p.CanWrite);
でWhereでフィルターする。 今回var使ってるが、ToArray();を使って配列化する必要がある。
PropertyInfo[] qry = type.GetProperties(BindingFlags.Instance | BindingFlags.Public).Where(p => p.CanRead && p.CanWrite).ToArray();