2013-11-21 48 views
0

我想显示数据库中的每一件事情到asp.net。但我的一些价值是无效的,有些不是。当我加载到空的页面时会导致错误。我可以知道我该如何解决这个问题?我的意思是显示一切从数据库不关心它是NULL或有内容。从asp.net数据库中显示为空

SELECT m.PersonID, m.Picture,m.PersonName, t.title, t.Fileupload, t.contentBody,  t.dateInserted FROM person m, thread t WHERE m.PersonID = t.PersonID AND t.threadID = @TID 

t.FileUpload在我的数据库中有一些行是空的,有些是包含的。并且错误是

system.invalidcastexception unable to cast object of type 'system.dbnull' to type 'system.string' 
+1

代码,请和异常细节。 – speti43

+0

请张贴一些代码以更好地理解。 –

+0

你是否绑定了一些asp.net数据控件的细节? –

回答

1

使用标准SQL合并函数。

SELECT a.PersonID, 
Coalesce (a.Picture, othercolumn, anothercolumn, 'if all are null') as Picture 
from tableA a 

它将返回第一个非空值。

Coalesce in mySQL

或只是简单:

Coalesce (a.Picture, '') as Picture 

这将防止InvalidCastException的

+0

但现在有另一个问题System.IndexOutOfRangeException。找不到具体栏目...... – user2769165

+0

使用别名:coalesce(a.Picture,'')如图 – speti43

+0

非常感谢。其工作:D – user2769165