我使用 C# 来调用 Sharepoint 网络服务 。 我想获得一个 Sharepoint 列表, 然后对列表中的每个项目, 将其属性写入控制台 。 当我在 < code> foreach code> 的属性中进行循环时, 我不断得到一个“ 不设置为对象实例的对象引用 ” 。 代码如下 :
class Program
{
static void Main(string[] args)
{
try
{
cSharpTest_service.Lists lists = new cSharpTest_service.Lists();
lists.Url = "http://wsssandbox/sites/cSharp/_vti_bin/lists.asmx";
lists.Credentials = System.Net.CredentialCache.DefaultCredentials;
System.Xml.XmlNode listData = lists.GetListItems("cSharpTestList", "", null, null, "", null, "");
foreach (System.Xml.XmlNode iterateNode in listData)
{
Console.WriteLine("--NODE--");
System.Xml.XmlAttributeCollection attrs = iterateNode.Attributes;
foreach (System.Xml.XmlAttribute attr in attrs)
{
Console.WriteLine("Name:");
Console.WriteLine(attr.Name);
Console.WriteLine("Value:");
Console.WriteLine(attr.Value);
}
}
Console.ReadLine();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
Console.ReadLine();
}
}
}
我认为这是例外, 因为有些属性是某些列表项目的 < code> null code > 。 但我不知道如何检查该属性作为 < code> foreach code > 迭代的一部分是否为无效 。