来自对象的GetType返回RuntimeType
我有一个简单的function:
public string getType(object obj){ Type type = obj.getType(); return type.FullName; }
如果对在运行时创建的字符串对象使用此函数,则该函数返回“System.RuntimeType”…
但它应该返回“System.String”…
如果你这样称呼它 –
string a = ""; string type = getType(a);
它将返回System.String
但如果你这样打电话 –
string a = ""; string type = getType(a.GetType());
然后它将返回System.RuntimeType
此外,你的方法有一个小typo
–
Type type = obj.getType();
应该是Type type = obj.GetType();
我猜你这样叫: getType(typeof(string))
。 typeof(abc)
是Type
的值(或RuntimeType
,它是一个实现细节)。
这样叫:
getType("")