2010-02-13 70 views
2

我buidling使用在链接给出的实施例的WPF应用程序下面以此为基础:WPF,实体framefork和验证模型

http://www.robbagby.com/silverlight/patterns-based-silverlight-development-part-ii-repository-and-validation/

在给定的用途OnValidating局部方法的示例调用验证,如果有问题,则在某些情况无效时抛出异常。

在ADO.NET EF中,没有可以让你做到这一点的部分方法,例如,没有OnValidating方法来覆盖。有什么,是部分方法,如:OnPropertyChanging和OnPropertyChanged,但我相信他们将被执行immidiatly当你改变一个属性,可以给出问题时,使用数据绑定(我没有WPF的经验,但据我记得从Winforms ,例如一个网格将会立即构建一个模型的空实例并在之后传递值,因此在一开始就抛出一个异常,因为有些要求没有得到满足(例如属性集)

所以基于关于这一点,我只是找错了方向吗?有没有执行验证一个更好的办法?

日Thnx提前!

回答

1

您应该在WPF中使用ValidationRules。它们仅用于验证目的而设计。

看一看here

1

您可能会感兴趣的WPF Application Framework (WAF)BookLibrary示例应用程序。它演示了如何在WPF + Entity Framework中使用验证,以及如何在存在验证错误时控制Save按钮。