Unity ioc - 如何将参数传递给依赖对象的构造函数

时间:2014-02-25 10:31:00

标签: c# inversion-of-control unity-container

例如

class SocketWrapper : ISocketWrapper
{ 
  public SocketWrapper(String ip, int port)
  {
  }
  // interface method
  public void DoSomethig()
  {
  }
}

class DataConnector  
{
  public DataConnector(ISocketWrapper conn)
  {
  }
}

在我的应用程序中我正在写

unity.RegisterType(typeof(ISocketWrapper), typeof(SocketWrapper))
unity.Resolve(typeof(DataConnector))

我已经完成了 如何在resloving对象“DataConnector”上将参数传递给依赖对象(SocketWrapper)的构造函数?

1 个答案:

答案 0 :(得分:1)

我设法使用Unity传递这样的参数:

unity.Resolve<DataConnector>(new ParameterOverride("SomePropertyName", someValue), new   ParameterOverride("SomeOtherProperty", someOtherValue)