我在使用文本字段的表格上工作时遇到错误。实体框架 - 获取文本列中的数据长度
如果我得到一个VARCHAR列的长度,我可以做
var result = (from t in context.tablename select t.fullname.Length)
但是,如果我运行一个文本字段相同的查询:
var result = (from t in context.tablename select t.biography.Length)
我得到错误:
Argument data type text is invalid for argument 1 of len function
。
在这个问题上做了一点点reading up我明白为什么SQL Server引发这个错误,但我不确定最好的解决方法。我知道我可以返回结果,然后得到结果字符串的长度,但肯定有一个更简单的方法来做到这一点?
虽然不是你的问题的答案,你有没有考虑改变列数据类型为'varchar(MAX)'? – Seph 2012-04-25 12:52:05
@Yuck,不,它们不完全相同(一方面,[TEXT已被弃用](http://msdn.microsoft.com/en-us/library/ms143729%28v=SQL.90% 29.aspx),特别是他们与len函数不一样@ Seph的建议是好的 – 2012-04-25 13:04:39
我应该标记这个;如果这有什么区别,我在SQL 2008上 – GrandMasterFlush 2012-04-25 13:07:03