Text Field全为空格时:<Eq><FieldRef Name='TextFieldName' /><Value Type='Text'></Value></Eq>
Text Field不含任何字符时:<IsNull><FieldRef Name='TextFieldName' ></FieldRef></IsNull>,上条不成立
Text Field不区分英文大小写,这一点应该主要取决于数据库的语言设置。
User Field格式为: UserID;#UserName,如:16;#Leo Ge
如果某个字段为空,则有可能不返回该字段,对XmlNode的Attribute必须先作有效性检验,如:if (i.Attributes.GetNamedItem("ows_Machine")!=null) taskItem.Machine = i.Attributes["ows_Machine"].Value;
GetListItems的一般性做法:
XmlDocument xmlDoc = new XmlDocument(); XmlElement query = xmlDoc.CreateElement( " Query " ); XmlElement viewFields = xmlDoc.CreateElement( " ViewFields " ); XmlElement queryOptions = xmlDoc.CreateElement( " QueryOptions " ); query.InnerXml = " <Where> " + " <Or> " + " <Eq><FieldRef Name='Machine' /><Value Type='Text'> " + machineName + " </Value></Eq> " + " <Or> " + " <IsNull><FieldRef Name='Machine'></FieldRef></IsNull> " + " <Eq><FieldRef Name='Machine' /><Value Type='Text'></Value></Eq> " + " </Or> " + " </Or> " + " </Where> " ; viewFields.InnerXml = "" ; queryOptions.InnerXml = "" ; XmlNode node = wss.GetListItems( " {E7E1EEC8-F627-48A9-8228-F4BC1CA45F0C} " , " {FC3C7DFF-7399-4944-A155-56AF8BCB0F11} " , query, viewFields, " 100 " , queryOptions, null ); NameTable nt = new NameTable(); XmlNamespaceManager xnm = new XmlNamespaceManager(nt); xnm.AddNamespace( " rs " , " urn:schemas-microsoft-com:rowset " ); xnm.AddNamespace( " z " , " #RowsetSchema " ); xmlDoc = new XmlDocument(); xmlDoc.ImportNode(node, true ); foreach (XmlNode i in node.SelectNodes( " rs:data/z:row " ,xnm)) }
相关文章:
2021-05-22
2021-10-04
2022-01-20
2022-01-31
2021-09-14
2022-01-26
2022-12-23
2022-12-23
猜你喜欢
2021-12-21
2022-12-23
2021-09-09
2021-12-19
2021-04-27
2022-02-24
2021-08-18
相关资源
下载
2022-12-20
下载
2023-02-18
下载
2022-12-28