c# – LINQ to SQL中的错误,数据库上有空字符串

前端之家收集整理的这篇文章主要介绍了c# – LINQ to SQL中的错误,数据库上有空字符串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经使用LINQ to sql多年了,但这是我第一次看到这种行为.

我有一个包含几个列(varchar(15))的数据库表,可能包含空字符串(”).我通过运行LEN(列)并检查结果为0来验证这一点.

现在当我从LINQ2sql调用它时,它返回一个包含单个空格的字符串的对象字段(string.Length == 1).

我可以应用一些解决方法,例如在数据库中将它们设置为NULL或修剪字符串,但我想知道是否有人之前遇到过此问题或者是否已知错误(在MS Connect上报告).如果没有,我会报告.

谢谢.

解决方法

问题在于LEN功能
SELECT LEN(' ')

sql Server中返回0;这是一个完整的PITA.

SELECT DATALENGTH(' ')

返回1

猜你在找的C#相关文章