请注意:我已经通过指向类似问题答案的链接回答了我自己的问题。一旦我被允许,我会接受这个答案(除非有人同时提出更好的答案)。
我有一个数据库列定义为NVARCHAR(1000) NOT NULL DEFAULT(N'')
- 换句话说,一个不可为空的文本列,默认值为空白。
我有一个由 Linq-to-SQL 类设计器生成的模型类,它正确地将属性标识为不可为空。
我对那个属性有一个TextAreaFor
看法。我UpdateModel
在我的控制器中使用从表单中获取值并填充模型对象。
如果我查看网页并将文本区域留空,UpdateModel
则坚持将属性设置为NULL
而不是空字符串。(即使我在调用之前在代码中将值设置为空白UpdateModel
,它仍然会用 覆盖它NULL
)。当然,这会导致后续数据库更新失败。
我可以NULL
在调用后检查所有这些属性UpdateModel
,但这似乎很荒谬——肯定有更好的方法吗?
请不要告诉我我需要一个自定义模型绑定器来处理这样一个简单的场景......!