IDataErrorInfo最佳实践

Fel*_*tto 4 wpf mvvm idataerrorinfo .net-3.5

我正在使用WPF项目MVVM.

使用验证错误的最佳做法是IDataErrorInfo什么?在我的模型或ViewModel中?

什么是用于实施验证的最佳模式?

PS我正在使用.NET3.5.

gre*_*reg 5

我认为没有正确的方法或错误的方法.这完全取决于您的应用程序以及您是否在WPF应用程序中使用不同的模式或体系结构或具有特定需求.

如果您使用不同的分层体系结构,则可以将验证放在应用程序的业务层中.如果是这种情况,请使用此链接.

在我的应用程序中,我喜欢将验证放在viewmodel中.显然,在某些情况下,这是一个坏主意,例如; 如果在viewmodel中有FirstName属性,则意味着您只限制GUI来验证FirstName属性,但如果有人从其他位置设置它,该怎么办呢.

这一切都归结为您的应用程序和要求的需求.就个人而言,我将它们放在我的ViewModel中,因为它快速而简单.但是对于最佳实践,我建议您通读链接.

我还建议您通读以下链接,以便您更好地理解;

如何在WPF ViewModel中使用模型验证规则

要么

业务层验证示例

希望这可以帮助!