【发布时间】:2017-12-20 18:44:51
【问题描述】:
我的 prism 项目中有多个模块(每个模块在不同的项目中)。我想在每个模块之间共享同一个对象。
例如,假设我有 Order 类,我想在我的模块中访问这个 Order 对象。
目前,我实现了一个接口,并将其注册到我的 Prism 项目中的容器中。
public interface ICommonService{
Order GetData();
}
public class CommonService : ICommonService{
public Order MyOrder{ get; set; }
public Order GetData(){
return MyOrder;
}
public void SetData(Order order){
MyOrder = order;
}
}
我在需要MyOrder 的每个模块中都使用它。
这是在模块之间共享同一对象的正确方法吗?
另外,我的 View Models 类包含几个 Manager 类。
应该只 View Model 类使用 ICommonService 还是我的 Manager 类也可以使用它?
我正在尝试编写干净且易于管理的代码。
谢谢。
【问题讨论】:
-
问题不是很清楚,因为您要解决的实际问题是什么?由于 PRISM 是定义参考设计,它为大多数常见场景提供了示例解决方案……请参见此处:stackoverflow.com/questions/34741727/… 和此处:social.msdn.microsoft.com/Forums/en-US/…