2017-05-25 10 views
6

.NET Core 1.1Type.GetInterfaces()メソッドは、指定された型で実装されたインターフェイスの一覧を提供します。残念ながらType.GetInterfaces()はまだ.NET Standard 1.xには存在しません。Type.GetInterfaces().NET Standard 1.xの回避策

.NET Standard 2.0に含まれていることをお勧めします。

その間に、タイプのインターフェイスリストや、指定されたインターフェイスを実装するクラスのリストを取得するための回避策を知っている人は誰ですか?.NET Standard 1.x

多くの感謝!

答えて

8

これはトリックを行う必要があります。 GetTypeInfo()System.Reflection名前空間の拡張メソッドで、InstrospectionExtensionsの一部です。

using System.Reflection; 
var interfaces = typeof({SOME_TYPE}).GetTypeInfo().GetInterfaces(); 
+0

私はGetInterfaces()が.NET Standard 1.xに実装されていないと考えています。私はその理解に間違っていますか? –

+0

@AnthonyGatlin 'Type.GetInterfaces()'はありませんが、 'TypeInfo.GetInterfaces()'はです。このコードは、拡張メソッドを使用して 'GetTypeInfo()'拡張メソッドを使用して 'Type'の' TypeInfo'にアクセスしています。これは私のために '.NET標準1.6'ライブラリと' .NETCoreApp1.1'コンソールアプリケーションを使っていました。それがあなたのために働かないなら私に知らせてください。 –

+1

ロベルト、それは魅力のように動作します。本当にありがとう! :) –