【问题标题】:.Net Round-trip Types.Net 往返类型
【发布时间】:2011-02-26 18:25:56
【问题描述】:

我制作了一个为某些参数生成唯一字符串键的方法。但是如果调用相同的值,则使用相同的键。

我只接受原始类型、字符串、DateTime、Guid 和 Nullable(因为我将类型附加在一起,所以我可以区分谁是 int 和谁是 int?),因为我可以将所有类型都转换为字符串而不会丢失值或精度。 (对于 float 和 double a 使用 ToString("R"),to DateTime ToString("O"))。

是否有一种简单的方法可以知道我可以在字符串中转换哪些类型而不会发生冲突?还有这个transform是怎么做的(我之前说的,float、double和datetime都有具体的方式)

谢谢

【问题讨论】:

    标签: .net string types


    【解决方案1】:

    确保将文化不变的字符串用于往返非常重要。

    因此我通常使用XmlConvert.ToXxx() 方法来转换和解析字符串;那些使用旨在用于往返的标准 XML 格式。查看那里支持的类型还可以让您了解开箱即用的类型。

    对于更通用的方法,您可以使用IConvertible 接口方法,它们都接受IFormatProvider,例如可以是不变的文化(CultureInfo.InvariantCulture),但这并不真正保证往返功能.

    【讨论】:

      猜你喜欢
      • 2016-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-14
      • 1970-01-01
      • 2013-02-06
      • 2014-03-08
      相关资源
      最近更新 更多