我只是好奇什么最佳实践解决方案将得到我目前的情况。我有一个以ARGB整数形式存储颜色的数据库,但我允许它为空,因为有时可能不需要指定颜色。使用实体框架,我有一个带有ColorArgb属性的生成类,用于访问返回的列和int,如预期的那样。我还手动添加了另一个属性Color,它返回一个System.Drawing.Color对象。 Color属性几乎只是一个过程,所以我可以以更自然的方式与生成的类进行交互。设置如此简单:给定可能为空的int时返回Color.FromArgb的最佳实践C#
ColorArgb = value.ToArgb();
但是,获得更有趣一点。这是我到目前为止有:
return ColorArgb == null ? Color.Empty : Color.FromArgb(ColorArgb ?? 0);
正如你所看到的,我想保持想法,一个颜色没有必要为这个类,所以我回到Color.Empty当底层ARGB值为空,但空合并运算符的右侧永远不会到达。我保证这个值不是null,但我不知道如何以最佳实践形式明确告诉编译器。不是一个严重的问题,但我想学习。因此,非常感谢所有帮助。
编辑:ColorArgb类型为System.Nullable<int>
'ColorArgb'的类型是'int?'吗? – ZoolWay