gpt4 book ai didi

c# - 在 ASP.NET MVC 和 WPF MVVM 中重用相同的模型

转载 作者:行者123 更新时间:2023-11-30 15:59:30 26 4
gpt4 key购买 nike

我正在 WPF MVVM 中开发一个应用程序,但我还需要在同一个解决方案中创建一个 MVC 项目。

我想知道是否有任何方法可以在两个类中重用相同的模型,以及最好的方法,因为要满足 MVVM 规范

例如,我需要在我的属性集中添加一个“PropertyChanged”,这在 MVC 项目中是不必要的。

最佳答案

我同意@@Douglas Gandini 的观点。你应该在一个单独的程序集中定义你的业务对象,你可以从你的 ASP.NET 和 WPF 应用程序中引用它。这些类不应实现任何特定于客户端的接口(interface),例如 INotifyPropertyChanged,而应是仅包含业务逻辑的纯 POCO 类。

然后,在您的 WPF 应用程序中,您可以创建一个 View 模型类,该类实现 INotifyPropertyChanged 接口(interface)并包装业务对象的任何属性,这些属性对于公开到 View 并从 View 绑定(bind)到是有意义的。

然后 View 模型有一个模型的引用,即你的业务对象在一个单独的程序集中定义,可以在几个不同的客户端应用程序之间共享,并且 View 绑定(bind)到 View 模型。这通常是(或应该)在 WPF 应用程序中实现 MVVM 设计模式的方式。 View 模型类包含您的应用程序逻辑,例如如何在数据绑定(bind)属性值更改时通知 View ,并且模型包含在所有平台和应用程序中都相同的业务逻辑。

当然,这意味着您最终会拥有更多的类,但这不一定是坏事,因为每个类都有自己的职责。 View 模型的职责是充当应用程序特定 XAML View 的模型,而模型类的职责是实现业务逻辑。

关于c# - 在 ASP.NET MVC 和 WPF MVVM 中重用相同的模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41506055/

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