我们正在为我们的应用服务器使用DotNet Remoting,并使用StructureMap。如何在远程处理对象中设置适当的依赖注入,以便我的代码不再像这样依赖查找代码?
PolicyEntity policy = ObjectFactory.GetInstance<IPolicyDataAccessor> ().FindByPolicyId (policyId);
要清楚,我希望能够在我的远程处理对象上声明一个属性并将StructureMap注入其中。然后我就可以写了。
PolicyEntity policy = PolicyDataAccessor.FindByPolicyId (policyId);
任何帮助将不胜感激。
答案 0 :(得分:2)
您不应该对通过网络发送的任何内容注入任何依赖关系。您应该只通过线路发送数据包(DTO)并使用服务(通过DI框架解析)在本地处理这些消息。
答案 1 :(得分:0)
由于从ObjectFactory创建远程对象不太方便,最简单的方法是让远程处理服务器正常构造对象,并在它将调用的对象构造函数内,让远程对象注入其自身依赖使用;
ObjectFactory.BuildUp(this);
这会注入所有依赖项,就好像对象是从ObjectFactory创建的那样开始。