也許是這樣;如果你將CLR類型定義爲系統核心類型。
,我會刪除,如果錯了
public static class TypeExtension
{
public static bool IsCLRType(this Type type)
{
var fullname = type.Assembly.FullName;
return fullname.StartsWith("mscorlib");
}
}
交替;
public static bool IsCLRType(this Type type)
{
var definedCLRTypes = new List<Type>(){
typeof(System.Byte),
typeof(System.SByte),
typeof(System.Int16),
typeof(System.UInt16),
typeof(System.Int32),
typeof(System.UInt32),
typeof(System.Int64),
typeof(System.UInt64),
typeof(System.Single),
typeof(System.Double),
typeof(System.Decimal),
typeof(System.Guid),
typeof(System.Type),
typeof(System.Boolean),
typeof(System.String),
/* etc */
};
return definedCLRTypes.Contains(type);
}
你將什麼定義爲「CLR類型」?這不是一個具有特定單一商定含義的術語:那麼,您*意味着什麼? – 2013-03-08 10:29:01
我想我正在尋找這個列表:http://msdn.microsoft.com/en-us/library/xa669bew.aspx – Marnix 2013-03-08 10:31:11
在該鏈接文檔中,術語「CLR類型」用於指代可以從CLR中使用,所以在這方面*您可以從CLR中訪問的任何*類型是「CLR類型」 – Justin 2013-03-08 10:35:08