4
我有一個類型(例如通過反射)。獲取特定框架System.Type的c#特定名稱?
我有Name屬性的值,例如String ...這是「System.String」。我想看到「字符串」(「int」而不是「System.Int32」等等)。
框架(或語言)中的任何東西都可以給我嗎?我是否可以將框架類型名稱轉換爲語言類型名稱(或者,也可以先輸入語言類型名稱)?
我有一個類型(例如通過反射)。獲取特定框架System.Type的c#特定名稱?
我有Name屬性的值,例如String ...這是「System.String」。我想看到「字符串」(「int」而不是「System.Int32」等等)。
框架(或語言)中的任何東西都可以給我嗎?我是否可以將框架類型名稱轉換爲語言類型名稱(或者,也可以先輸入語言類型名稱)?
可以使用的CodeDOM類獲得特定語言的類型別名
var cs = new CSharpCodeProvider();
var vb = new VBCodeProvider();
var type = typeof (int);
Console.WriteLine("Type Name: {0}", type.Name); // Int32
Console.WriteLine("C# Type Name: {0}", cs.GetTypeOutput(new CodeTypeReference(type))); // int
Console.WriteLine("VB Type Name: {0}", vb.GetTypeOutput(new CodeTypeReference(type))); // Integer
什麼是更有趣的是,你會如何解決這個問題渲染泛型類型。 C#認爲是「C.D 」的類型被CLR呈現爲「C'1 + D'1 [System.Int32,System.String]」。 –
2010-09-01 18:23:21
'Nullable'也可能是一個值得縮短到'T'的邊界情況 –
2010-09-01 18:26:29