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

最佳答案

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

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

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

关于wpf - .Net 4.5 : Should I use IDataErrorInfo or INotifyDataErrorInfo?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19402840/

10-16 15:01