2009-09-30 121 views
3

对不起,这样简单的问题。检查是否有空值

我该如何检查这个空值?

obj.DivisionNotes = (string)row["DivisionNotes"]; 

我在想这样的事情。

obj.DivisionNotes = (string)row["DivisionNotes"]?null:"No notes"; 

我说得对。

任何帮助非常感谢。

回答

10

你空的铸件会造成一个问题,你可以使用随着空合并运算符投的as为您解决问题...

obj.DivisionNotes = (row["DivisionNotes"] as string) ?? "No notes"; 
+0

谢谢,我感谢你的帮助。 – Chin 2009-09-30 02:32:02

+0

没问题,很高兴为你效劳。 – 2009-09-30 02:32:40

1

您可以使用ISNULL函数在原始T- SQL查询,改变这样的查询:

SELECT ID, Name, DivisionNotes FROM tblWHATEVER 

SELECT ID, Name, ISNULL(DivisionNotes, 'No notes') AS 
    DivisionNotes FROM tblWHATEVER 

我并不是说这比检查代码中的null更好,但有时候,查询中的一个简单更改可以使您不必在一堆不同的地方更改代码。

+0

有趣的是,我想知道为什么你会为这个想法得到一个反对票。无论如何感谢输入。 – Chin 2009-09-30 02:33:10

+0

@Chin:有人认为我没有真正回答你的问题。 – MusiGenesis 2009-09-30 02:46:41

1

有很多方法可以处理数据行中的空值。请this other post在那里我解释了多种方法。