与えられた:
public T Get<T>() { ... }
どこT
が閉まっているのですか、どうすればタイプIEnumerable<XYZ>
を判別できますか?XYZ
そもそも変数がありません。
与えられた:
public T Get<T>() { ... }
どこT
が閉まっているのですか、どうすればタイプIEnumerable<XYZ>
を判別できますか?XYZ
そもそも変数がありません。
を使用するtypeof(T)
と、適切なタイプ情報が得られます。
LINQのTypeSystem.GetElementTypeメソッドを使用できます:IQueryableプロバイダーの構築-typeof(XYZ)
与えられたときに取得するパートI typeof(IEnumerable<XYZ>)
:
var elementType = TypeSystem.GetElementType(typeof(IEnumerable<XYZ>));
// elementType == typeof(XYZ)
このメソッドでは、を使用して、を表すTypeオブジェクトtypeof(T)
を取得できます。T
public T Get<T>()
{
var elementType = TypeSystem.GetElementType(typeof(T));
...
}