为sharepoint字段执行orderby时。生成以下错误:
text,ntext和image数据类型无法进行比较或排序,除非使用IS NULL或LIKE运算符。 描述:执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.Data.SqlClient.SqlException:无法比较或排序text,ntext和image数据类型,除非使用IS NULL或LIKE运算符。
CAML query orderby子句如下:
<Where>
<And>
<And>
<Eq>
<FieldRef Name='ContentType' />
<Value Type='Choice'>Documents</Value>
</Eq>
<Eq>
<FieldRef Name='UserID' />
<Value Type='Text'>UserID_VAL</Value>
</Eq>
</And>
<Neq>
<FieldRef Name='Email' />
<Value Type='Text'>NA</Value>
</Neq>
</And>
</Where>
<OrderBy>
<FieldRef Name='Description' Ascending='TRUE' Nullable='TRUE'/>
</OrderBy>
正在排序的字段是Description,它在列表中具有以下数据类型 说明单行文字。
解决此问题的任何方法。
提前致谢。
答案 0 :(得分:0)
尝试使用多行列排序的Caml查询(注意)将产生以下错误:
“除非使用IS NULL或LIKE运算符,否则无法比较或排序text,ntext和image数据类型。”
SharePoint MultiLine或Note列作为ntext数据类型存储在内容数据库的AllUserData表中。 SQL Server无法使用text,ntext或image数据类型进行排序。解决这个问题的唯一方法是不使用CAML中的排序功能并自行对返回的数据集进行排序。