Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 具有应用程序服务的MVVM模式_C#_Wpf_Mvvm_Service_Prism - Fatal编程技术网

C# 具有应用程序服务的MVVM模式

C# 具有应用程序服务的MVVM模式,c#,wpf,mvvm,service,prism,C#,Wpf,Mvvm,Service,Prism,我正在使用PRISM开发一个新的WPF应用程序。我想添加一些将使用IOC(Unity)注册的应用程序服务。我的问题是如何设计这些服务;让我们想象一下,我有一些设备需要控制、监视和管理……我在创建一个新的IDeviceService时考虑过,但我不知道如何设计接口行为,我应该为每个设备提供一个服务实例,还是只提供一个,并将设备Id作为参数传递 另一个问题是在设备模型中放置什么,在服务中放置什么?最后,服务应该更新模型还是应该是viewmodel 谢谢 看看MediatR。或者创建一些应用程序服务类

我正在使用PRISM开发一个新的WPF应用程序。我想添加一些将使用IOC(Unity)注册的应用程序服务。我的问题是如何设计这些服务;让我们想象一下,我有一些设备需要控制、监视和管理……我在创建一个新的IDeviceService时考虑过,但我不知道如何设计接口行为,我应该为每个设备提供一个服务实例,还是只提供一个,并将设备Id作为参数传递

另一个问题是在设备模型中放置什么,在服务中放置什么?最后,服务应该更新模型还是应该是viewmodel


谢谢

看看MediatR。或者创建一些应用程序服务类。或者为每个用例创建一个类。这只会减少视图模型中的应用程序代码。

尝试一下,遇到问题时再回来。感谢您的回答,但这是一个概念问题,而不是技术问题。当然,软件中的每件事都可以做得很好或不好,并让它正常工作。。。我只是问你认为什么是最好的方法。最好的方法是开始编码:把你的应用逻辑放在你的虚拟机中,你的服务逻辑在你的服务中,你的数据在你的模型中。继续打字。如何设计你的软件取决于你。只需问问自己,为每个设备提供服务实例是否有意义。没有足够的信息来帮助你,你的问题很抽象。