25
我曾经在我的MVVM/WPF应用程序中使用IDataErrorInfo
。现在在.Net 4.5中有INotifyDataErrorInfo
可用。是更换IDataErrorInfo
还是继续使用IDataErrorInfo
?.Net 4.5:我应该使用IDataErrorInfo还是INotifyDataErrorInfo?
我曾经在我的MVVM/WPF应用程序中使用IDataErrorInfo
。现在在.Net 4.5中有INotifyDataErrorInfo
可用。是更换IDataErrorInfo
还是继续使用IDataErrorInfo
?.Net 4.5:我应该使用IDataErrorInfo还是INotifyDataErrorInfo?
在INotifyDataErrorInfo
(特别是,它支持多个动态更改每个对象/属性的错误消息)方面有多项改进,使其优于以前的接口。但最大的区别是它是异步的。每当错误状态改变时,您现在必须触发ErrorsChanged
事件。
如果您正在.NET 4.5中实施针对运行Windows 8的设备的应用程序,则应该强烈考虑使用新界面。异步风格编程是这类应用程序的“预期模型”,特别是如果包含RT设备的话。实施INotifyDataErrorInfo
优于IDataErrorInfo
没有那么复杂,所以没有什么不好。
这并不意味着您应该改装所有现有的应用程序,但;再次,这取决于你的目标。如果您尝试升级现有的应用程序以实现RT兼容,则应该交换新的错误处理代码。否则,不需要改变什么工作。