我正在编写一个访问XML Web服务API的库。 XML通常包含整数/十进制值等,但是通常该字段包含字符串“ N / A”。为了适应这一点,我设计了这种类型的设置:
public decimal? Humidity { get; private set; }
public decimal? WindChill { get; private set; }
public int? HeatIndex { get; private set; }
public decimal? FeelsLike { get; private set; }
public decimal? Snow { get; private set; }
在XML解析期间,我检查类型,如果它是字符串,则将类型设置为null,否则将其设置为提供的数值。这是好事还是坏事?
最佳答案
以我的经验,当您尝试表示可选的值类型属性(例如int
和decimal
)时,使用Nullable<T>
比其他方法更可取(例如,在类型的域中选择哨兵值,例如-1
)。
因此,就您而言,我认为您的做法很好。 null
是表示N/A
整数的明智方法。
关于c# - 使用大量Nullable <T>是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29197722/