6

私の PCL コア プロジェクト (WP8、Android、iOS、Xamarin、MvvmCross) では、カスタム属性を使用しています。Type.GetCustomAttributes() 拡張メソッドを使用すると、使用されている属性を調べることができます。

PCL Profile104 を使用すると、これはうまく機能します。しかし、async/await を使用したいので、PCL Profile78 (および .NET 4.5) を使用する必要があります。

問題: GetCustomAttributes() および Attributes プロパティが Profile78 で使用できないようです。どうして??

注: PCL Profile 104 クラス ライブラリを作成し、GetCustomAttributes() をラップして、PCL Profile78 ライブラリからこのライブラリを参照することで、回避策を検討しています。ただし、拡張メソッドはサポートされていないようです...

コード例:

public Pcl78Class()
{
    Type t = this.GetType();
    var attributes = t.Attributes;
    var customAttributes = t.GetCustomAttributes(true);

    // another weird thing: Why is VS CodeCompletion telling me it knows CustomAttributeExtensions class and methods?
    //System.Reflection.CustomAttributeExtensions.GetCustomAttributes(t);
}

ここに画像の説明を入力

4

1 に答える 1