2013-04-10 36 views
0

我有遍历SharePoint列表项的列表。 一些项目没有数据,所以抛出空例外。Sharepoint列表项抛出空错误

我用

if (!string.IsNullOrEmpty(xt["ows_LinkTitle"].ToString())) 
    { 
     Entity.DefectType = xt["ows_LinkTitle"].ToString();  
    } 

但错误依然存在。

我也试过

if(xt["ows_LinkTitle"].ToString()!= null) 
    { 
     Entity.DefectType = xt["ows_LinkTitle"].ToString(); 
    } 

我可以把一个try catch块左右,但我不想这样做对每一条线路。

是否有任何方法检查SharePoint项目值而不会引发错误。

+0

xt是什么类型?你为什么用'ows_'作为字段名称的前缀?如果xt是列表项,则必须通过字段显示名称或字段内部名称 – 2013-04-10 15:32:46

+0

@SteveB请检查[this](http://sharepoint.stackexchange.com/a/50931)为什么'ow'前缀 – Flowerking 2013-04-10 15:38:15

回答

1

尝试使用显式的转换,而不是:

Entity.DefectType = (string)xt["ows_LinkTitle"]; 

如果你想检查一个null分配值之前尝试

if(xt["ows_LinkTitle"] != null) 

由于.ToString()null是异常的原因。

+0

感谢你工作干杯哥们 – 2013-04-10 15:48:53