对 Unity XML 配置和泛型有点头疼。我有这些文件:
public interface IRepository<T> {}
public class OrderRepository : IRepository { }
public class DispatchOrderProcess
{
public DispatchOrderProcess(IRepository<Order> repository) { }
}
我想使用 Unity XML 配置将 Order Repository 注入 DispatchOrderProcess 类。到目前为止,我有这样的事情:
<type name="OrderRespository" type="Company.Project.Core.Interfaces.IRepository`1, Company.Project.Core" mapTo="Company.Project.Core.Repositories.OrderRepository, Company.Project.Core" />
<type name="DispatchOrderProccess" type="Company.Project.Core.Interfaces.ISendAlertsProcess, Company.Project.Core" mapTo="Company.Project.Core.Processes.SendAlertsProcess, Company.Project.Core">
<typeConfig>
<constructor>
<param name="orderRepository" parameterType="Company.Project.Core.Interfaces.IRepository`1, Company.Project.Core">
<dependency name="OrderRespository"/>
</param>
</constructor>
</typeConfig>
</type>
</types>
</container>
</containers>