44

我曾经IDataErrorInfo在我的 MVVM/WPF 应用程序中使用过。现在INotifyDataErrorInfo在 .Net 4.5 中可用之后是替换IDataErrorInfo还是继续使用旧方式更好IDataErrorInfo

4

1 回答 1

54

有许多改进INotifyDataErrorInfo(特别是,它支持每个对象/属性的多个动态变化的错误消息),使其优于以前的界面。但最大的不同是它是异步的。您现在必须ErrorsChanged在错误状态发生变化时触发事件。

如果您在 .NET 4.5 中实现面向运行 Windows 8 的设备的应用程序,您应该强烈考虑使用新接口。异步风格的编程是此类应用程序的“预期模型”,尤其是在您包含 RT 设备的情况下。INotifyDataErrorInfo实现over并没有那么复杂IDataErrorInfo,所以没有真正的缺点。

不过,这并不意味着您应该改造所有现有的应用程序;同样,这取决于您的目标。如果您尝试将现有应用程序升级为与 RT 兼容,您可能应该换入新的错误处理代码。否则,无需更改有效的方法。

于 2013-10-16T12:12:39.617 回答