0

たとえば、「Foo」という単語で始まるすべての ObjectSet を取得したいと考えています。以下のコードを書きましたが、if コンストラクトにステップ インしません。

foreach (PropertyDescriptor prop in TypeDescriptor.GetProperties(context))
            {
                if (prop.PropertyType == typeof(ObjectSet<>))
                {
                   // It doesn't step here even though 
                   // prop.PropertyType is an ObjectSet`1...

助けてください。

4

1 に答える 1

4

prop.PropertyTypeは、実際にObjectSet<X>はいくつかのためだと思いXます。おそらく次のようなものが必要です。

if (prop.PropertyType.IsGenericType &&
    prop.PropertyType.GetGenericTypeDefinition() == typeof(ObjectSet<>))
于 2013-07-04T09:39:33.373 に答える