我们将DateTime的MinValue表示为DateTime.MinValue,但它如何表示为Byte []?
当我给出下面的内容时,
DALImage.TwinImage = Convert.IsDBNull(reader["TwinImage"]) ?
Byte[].MinValue :
(Byte[])reader["TwinImage"];
请帮助我作为C#编程的新手
答案 0 :(得分:1)
字节数组没有最小值 - 它作为一个概念没有意义。这就像问“购物清单的最低价值是多少”。
我认为你要做的是获得空字节数组。
DALImage.TwinImage = Convert.IsDBNull(reader["TwinImage"]) ?
new Byte[0] :
(Byte[])reader["TwinImage"];
修改强>: 你的评论表明你真正想要的是一个包含1个元素的字节数组,其中该元素是一个字节的最小值。
这将是以下代码:
DALImage.TwinImage = Convert.IsDBNull(reader["TwinImage"]) ?
new Byte[1] { Byte.MinValue } :
(Byte[])reader["TwinImage"];
但是,这也可以使用default编写,这可能在语义上更清晰。
DALImage.TwinImage = Convert.IsDBNull(reader["TwinImage"]) ?
new Byte[1] { default(Byte) } :
(Byte[])reader["TwinImage"];