gpt4 book ai didi

wpf - 在模型或 View 模型上实现INotifyPropertyChanged?

转载 作者:行者123 更新时间:2023-12-03 10:35:05 25 4
gpt4 key购买 nike

自从我涉足WPF以来已经有一段时间了,所以我花了一些时间来重新认识一些方法。

关于此MSDN Article-INotifyPropertyChanged应该在您的模型类中实现。这有点令人困惑,因为在其他文章上,我看到INotifyPropertyChanged正在 View 模型上实现。有些甚至在两者上都实现了它。 实现细节仅是特定于项目的,还是在wpf和mvvm中实现“INotifyPropertyChanged”的“最佳实践”方法?

我看到的向模型类添加变更通知的一个问题是使用像 Entity Framework 这样的ORM和数据库优先方法时。每发生一次数据库更改,您的模型就会更新,您在其中编写的所有代码都会被覆盖。我意识到我可能可以创建另一个局部类来减轻这种情况,但这似乎太繁琐和棘手。

我的一般问题是:实现变更通知时的最佳实践是什么?在模型上执行还是在 View 模型上执行?

最佳答案

我的建议是在需要的地方使用它。您将在模型和 View 模型上都实现它。

如果您的ViewModel中有一个要在xaml中跟踪的属性,则不会创建模型来封装它,因为这太过分了。

在MVVM模式中,为ViewModel实现INotifyPropertyChanged绝对是常见的方法。

您可以在几个MVVM库中找到此做法,例如MVVM Light,该库具有一个ViewModelBase类,您可以从ViewModels继承该类,以便实际上实现INotifyPropertyChanged。

关于wpf - 在模型或 View 模型上实现INotifyPropertyChanged?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34699301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com