0

为了使我的需求更容易解释,我将使用一个大家都知道的案例。

请记住,当您注册新的 Hotmail 帐户时,输入新的 Microsoft 帐户并离开该字段时,会根据数据库验证该值以检查其是否可用。

如何仅使用 DomainService 元数据上的 DataAnnotations 和 Validation 方法来做到这一点?

我正在使用从 SQL Express 数据库、RIA 服务、数据注释、验证方法和 Silverlight 5 自动生成的 ADO NET 实体模型。

我刚刚查看了 Jeff Handley 关于该主题的博客,他介绍了一种解决方案,该解决方案涉及创建一个服务,该服务使数据可从服务器上的验证方法中获得。问题是这个解决方案不适用于我的案例,他使用了两个表实体模型,并制作了一些仅适用于那个简单案例而不适用于我的技巧。

有人成功解决了这个问题吗?

我可以创建一个存储过程并在 Silverlight 应用程序中提交更改之前调用它,或者我可以在我的 ViewModel 的 OnSave 方法中进行额外验证,但这意味着我正在完成来自客户端的验证过程,并且我想完全从服务器完成,以避免重复代码。

此外,我想在按“保存”之前进行验证。

拉斐尔

4

1 回答 1

0

它是这样完成的:在 MVC 3 中创建自定义数据注释验证

简要地说,他们在注册期间根据数据库检查用户名的可用性

编辑

我认为这里是更好的链接(不是 QA,而是关于 How-To 的实际文章):

如何:在 ASP.NET MVC 中实现远程验证

希望这可以帮助。

于 2012-09-26T17:44:11.413 回答