【发布时间】:2011-02-15 12:39:54
【问题描述】:
我是 silverlight 的新手,因此在 silverlight 中进行数据访问,所以请耐心等待。我有一个引用 sql server 2008 数据库的 ADO.Net 实体数据模型。引起问题的表称为事务。交易表有一个不可为空的字段“MerchantChain”。此表由另一个程序填充,该程序在未提供商户链时将空字符串插入到商户链字段中。因此,在我的 silverlight 应用程序中,我根据用户提供的标准加载了一个包含事务的网格。网格仅用于显示,但我需要能够在用户查看事务后更新它的状态。所以我设置了 transaction.status 字段并尝试提交更改。在提交更改之前,transaction.HasValidationErrors 为 false。一旦 submitchanges 被执行(在调试器中) HasValidationErrors 为真并且提交抛出一个未处理的异常。 ValidationError 是merchantchain 字段是必需的。好吧,它是一个空字符串 - 它不为空。不知道该怎么做。这是视觉工作室 2010、silverlight 4、vb.net。
【问题讨论】:
-
哎呀我的同情。使字段不可为空但将此类字段中的空字符串视为可接受和预期值的设计正在自找麻烦。
-
@AnthonyWJones 空白字符串与可空字符串不同。考虑查询:SELECT * WHERE SomeString != 'Foo',如果 SomeString 不可为空,则结果集将包含空白字符串值,如果可空,则那些空行将丢失。空字符串是'长度为0的字符串',NULL是'没有字符串,没有长度,没有任何东西'
-
@Eugarps:嗯.. 好的,谢谢。
标签: silverlight ria validationerror