XXX.CreateDAL<IDAL.SqlHelper>();//这里调用下面的泛型函数publicstaticTCreateDAL<T>(){//这里怎么获取T的类型字符串,得到SqlHelper或者IDAL.SqlHelper}...展开
您好.
您所需要的代码如下.
public void CreateDAL<T>()
{
//这里怎么获取T的类型字符串,得到SqlHelper或者IDAL.SqlHelper
MessageBox.Show(typeof(T).ToString());
}
泛型方法是使用类型参数声明的方法,如下所示:
static void Swap<T>(ref T lhs, ref T rhs)
{
T temp;
temp = lhs;
lhs = rhs;
rhs = temp;
}
这里的T是传进来的,不需要获取。
比如:
public static T CreateDAL<T>()
{
//这里怎么获取T的类型字符串,得到SqlHelper或者IDAL.SqlHelper
}
这里的T是需要调用的时候确定类型的,不是反过来获取。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
/// <summary>
/// 获取类型名称
/// </summary>
public void GetClassName<T>()
{
// 打印结果:ClassName
Console.WriteLine( typeof (T).Name);
}
/// <summary>
/// 获取类型完全名称
/// </summary>
public void GetClassAllName<T>()
{
// 打印结果:namespace.ClassName
Console.WriteLine( typeof (T).ToString());
}
|
|
请发表评论