CoreCLRに変換しているプロジェクトをビルドしているときに、次のエラーが発生しました。
C:\ Users \ Benjamin \ Projects \ MiniProfiler \ StackExchange.Profiling \ SqlTiming.cs(136,25):エラーCS1061:「タイプ」に「IsEnum」の定義が含まれておらず、最初の引数を受け入れる拡張メソッド「IsEnum」がありませんタイプ「タイプ」のが見つかりました(usingディレクティブまたはアセンブリ参照がありませんか?)
これについて私が奇妙なのは、オンラインで見つけることができるすべてのものが、 Type
が利用可能であり、 IsEnum
プロパティが利用可能であることを示していることです。 Fowlerの逆パッケージ検索では、 System.Runtime
パッケージでType
が見つかり、 dnxcore50
フレームワークのproject.json
依存関係としてSystem.Runtime 4.0.20-*
があります。セクション。
ただし、コンパイラエラーが発生し、dotPeekはSystem.Runtime
パッケージにType
タイプがないとも言います。 私は何を逃しましたか?
@aggieben 、おそらく.GetTypeInfo()。IsEnumが必要です(GetTypeInfoはSystem.Reflection名前空間の拡張メソッドです)。 Typeの表面積の束は、IsEnumを含めてTypeInfoに移動されたと思います。 dotPeekに関しては、試したことはありませんが、mscorlib実装に転送しているSystem.Runtime.dllの[assembly:TypeForwardedTo(typeof(Type))]属性に注意を払っていないと推測する必要があります。
ありがとう!
2015-8-4の時点で、MSDNはType for .Net 4.5 /4.6の下にIsEnumをリストしていることに注意してください。
https://msdn.microsoft.com/en-us/library/System.Type_properties(v = vs.110).aspx
@stephentoubに感謝し
最も参考になるコメント
@aggieben 、おそらく.GetTypeInfo()。IsEnumが必要です(GetTypeInfoはSystem.Reflection名前空間の拡張メソッドです)。 Typeの表面積の束は、IsEnumを含めてTypeInfoに移動されたと思います。 dotPeekに関しては、試したことはありませんが、mscorlib実装に転送しているSystem.Runtime.dllの[assembly:TypeForwardedTo(typeof(Type))]属性に注意を払っていないと推測する必要があります。