0

我正在尝试读取一个 xml 文件,其中除了其他参数之外,还可以给出字段的类型。例子:

<elements>
   <element>
      <elementType>int</elementType>
   <element> 
      <elementType>string</elementType>
   </element>
<elements>

现在我想通过使用 type.GetType(value) 来获取类型,例如 value 是“int”或“string”。例如,它适用于“System.String”或“System.Int32”,但我不希望用户输入确切的类型。这可以以一种优雅的方式完成吗(没有 switch-case-nonsene)?

4

2 回答 2

5

不,您需要有一些 switch-case-“废话”或为您进行映射的字典。

这些不是 .NET 类型,它们是映射到 .NET 类型的 C# 关键字。

于 2013-06-24T15:38:29.793 回答
0

据我所知,没有办法做到这一点。类型别名的完整列表可以在这里找到。您可以轻松地将类型字典包含在解决方案中以别名字符串名称。这是当前列表:

  • 布尔:System.Boolean

  • 字节:系统.字节

  • sbyte : System.SByte

  • 字符 : System.Char

  • 十进制:System.Decimal

  • 双 : System.Double

  • 浮动:System.Single

  • 整数:System.Int32

  • uint : System.UInt32

  • 长:System.Int64

  • ulong : System.UInt64

  • 对象:系统对象

  • 短:System.Int16

  • ushort : System.UInt16

  • 字符串:System.String

于 2013-06-24T16:11:48.440 回答