【发布时间】:2009-07-23 14:39:43
【问题描述】:
LINQ2SQL 中的一个常见问题是,当 .NET 字符串允许为其变量分配任意长度时,您的数据库可能具有特定的最大长度约束(如 VARCHAR(5))。这将导致 SQL 错误消息“字符串或二进制数据将被截断。”,这是非常无益的,因为它不会告诉您哪些字段是罪魁祸首。
显然,验证输入的最大字符串长度将是正确的方法。我面临的主要问题是为项目中的每个 LINQ 对象创建必要的验证,并在字段的最大长度更新时更新验证。
理想情况下,我需要找到一种动态确定生成字段的最大长度的方法,这样我就不会冒险忘记稍后更新验证。
目前我能找到的最好的实现是"Integrating xVal Validation with Linq-to-Sql",它已经远远优于我能想到的任何东西。唯一不确定的点是动态确定最大长度。
有没有人看到或实现过类似的东西?
【问题讨论】: