.net Prism应用程序中的数据模型在哪里?

.net Prism应用程序中的数据模型在哪里?,.net,wpf,model,prism,.net,Wpf,Model,Prism,我很难在Prism应用程序中放置数据模型。大多数(如果不是全部的话)或我们的数据将来自web服务,并且web服务对于每个模块都是唯一的。不幸的是,将有需要共享的对象(例如person/user对象) 我真的很纠结于是将这些服务直接添加到模块中,使每个服务都真正独立,还是创建一个单独的项目来容纳web服务代理和业务实体 这些模块是由不同的团队构建的,但都将生活在同一个解决方案中(当然还有源代码管理)。您会发现问题的答案是主观的,每个人的回答可能有点不同 就我个人而言,我试图保持足够的分离,因为我不

我很难在Prism应用程序中放置数据模型。大多数(如果不是全部的话)或我们的数据将来自web服务,并且web服务对于每个模块都是唯一的。不幸的是,将有需要共享的对象(例如person/user对象)

我真的很纠结于是将这些服务直接添加到模块中,使每个服务都真正独立,还是创建一个单独的项目来容纳web服务代理和业务实体


这些模块是由不同的团队构建的,但都将生活在同一个解决方案中(当然还有源代码管理)。

您会发现问题的答案是主观的,每个人的回答可能有点不同

就我个人而言,我试图保持足够的分离,因为我不知道我的要求在未来会发生什么变化。例如,我可能正在构建一个ASP.NET应用程序,然后被要求执行相同操作的WinForm版本

通过将模型添加到独立部件,可以重用该部件,而无需考虑项目类型。因此,如果我在哪里构建Silverlight应用程序或Winform应用程序,我可以使用相同的模型

但是,我相信您问题的核心是您是否应该将每个web服务的数据模型分离到不同的程序集中。我认为把每一个项目都分离到自己的项目中有点过分了

我将确保该模型不依赖于web服务代码,因为如果将来更改需求,您可能会发现自己通过另一种方法获取数据

对我来说,分离的关键领域是:

  • 数据访问层
  • 业务对象层(模型)
  • 用户界面层

你会发现对你的问题的回答是主观的,每个人的回答可能有点不同

就我个人而言,我试图保持足够的分离,因为我不知道我的要求在未来会发生什么变化。例如,我可能正在构建一个ASP.NET应用程序,然后被要求执行相同操作的WinForm版本

通过将模型添加到独立部件,可以重用该部件,而无需考虑项目类型。因此,如果我在哪里构建Silverlight应用程序或Winform应用程序,我可以使用相同的模型

但是,我相信您问题的核心是您是否应该将每个web服务的数据模型分离到不同的程序集中。我认为把每一个项目都分离到自己的项目中有点过分了

我将确保该模型不依赖于web服务代码,因为如果将来更改需求,您可能会发现自己通过另一种方法获取数据

对我来说,分离的关键领域是:

  • 数据访问层
  • 业务对象层(模型)
  • 用户界面层

我完全明白你的意思,但问题不在于是否应该分离关注点(这是给定的),而在于在特定于Prism的应用程序中,层的分离比模块的独立性更重要。我完全明白你的意思,但问题不在于关注点是否应该分离(这是给定的),而在于在特定于Prism的应用程序中,层的分离比模块的独立性更重要。