怎样判断一个泛型的数据具体是什么类型?
如下面的代码
public void AAAA<TSource>(IList<TSource> AList)
{
if (TSource is DbDataRecord) 想判断传递过来的TSource是什么类型? 这样编译不过 this.Text = "Hello";
}
如下面的代码
public void AAAA<TSource>(IList<TSource> AList)
{
if (TSource is DbDataRecord) 想判断传递过来的TSource是什么类型? 这样编译不过 this.Text = "Hello";
}
{
if (TSource.Gettype() is DbDataRecord)
}
这样试下看
支持继承类的情况:typeof(DbDataRecord).IsAssignableFrom(typeof(TSource))
{
Type t = TSource.Gettype();
if (t is DbDataRecord)
{ }
}
泛型函数???
判断TSource的类型直接判断AList就行了,因为AList就是Tsource的类型 public void AAAA<T>(IList<TSource> AList)
{
Type t = AList.GetType();
if (t is 你要判断的类型)
{
//执行
}
static void Main(string[] args)
{
AAAA<string>(new List<string>());
}
public static void AAAA<TSource>(IList<TSource> AList)
{
Type t = Type.GetType(Regex.Match(AList.GetType().FullName.Replace("[[", "[").Replace("]]", "]"), @"\[(?<type>[^\]]+)\]").Groups["type"].Value);
Console.WriteLine(t.FullName);
}