"Argument data type ntext is invalid for argument 1 of len function" 错误
"Argument data type ntext is invalid for argument 1 of len function" error
我正在使用 entity framework 并编写此代码以从数据库中获取一些结果:
ReviewsDBEntities DB = new ReviewsDBEntities();
var result=DB.Review.Where(r => r.ReviewText.Length > 200);
但我收到此错误作为内部错误:"Argument data type ntext is invalid for argument 1 of len function"
我查了一下,发现因为 ReviewText 的类型定义为 ntext,函数 Len 不会 运行 它在数据库端。现在,我不知道如何更改代码以获取长度超过 200 的 ReviewText。
var result=DB.Review.Where(r => SqlFunctions.DataLength(r.ReviewText) / 2 > 200);
为什么/ 2
?因为DATALENGTH
returns是字节长度,而NTEXT
包含Unicode字符,每个字符占用2个字节。
我正在使用 entity framework 并编写此代码以从数据库中获取一些结果:
ReviewsDBEntities DB = new ReviewsDBEntities();
var result=DB.Review.Where(r => r.ReviewText.Length > 200);
但我收到此错误作为内部错误:"Argument data type ntext is invalid for argument 1 of len function"
我查了一下,发现因为 ReviewText 的类型定义为 ntext,函数 Len 不会 运行 它在数据库端。现在,我不知道如何更改代码以获取长度超过 200 的 ReviewText。
var result=DB.Review.Where(r => SqlFunctions.DataLength(r.ReviewText) / 2 > 200);
为什么/ 2
?因为DATALENGTH
returns是字节长度,而NTEXT
包含Unicode字符,每个字符占用2个字节。