从SP2010读取文件属性时,对象引用未设置为对象的实例
本文关键字:设置 对象 实例 对象引用 SP2010 取文件属性 | 更新日期: 2023-09-27 17:58:05
我有一个sharepoint文档库,它有一个名为"DocumentType"的自定义字段,这不是强制性字段。当我试图使用下面的代码读取此属性时,当值在该字段中时,它可以正常工作,但如果它的值为空,则会出现错误"对象引用未设置为对象实例。"如果值不在,我需要传递空字符串以进行进一步的逻辑,我该如何处理?
SPFile spFile=Web.GetFile(Context.Request.Url.ToString());
string spDocumentType=string.Empty;
if (spFile.Properties["DocumentType"].ToString() == "INV") *In this line exception throwing where value is empty in this field in the doc library.
{
spDocumentType = spFile.Properties["DocumentType"].ToString();
}
这样做:
if(spFile.Properties["DocumentType"] !=null)
{
spDocumentType = spFile.Properties["DocumentType"].ToString() == "INV" ? spFile.Properties["DocumentType"].ToString() : "";
}
else
{
spDocumentType ="";
}
更改这段代码:
spFile.Properties["DocumentType"].ToString()
对此:
Convert.ToString(spFile.Properties["DocumentType"])
当值为null
时,ToString()
抛出异常,而Convert.ToString()
方法测试null
并返回一个空字符串。