我不知道setter属性现在为什么工作,我已经配置了容器,但是如果这个属性为null,则值
container.Configure(_ =>
{
_.Policies.FillAllPropertiesOfType<IUserRepository>().Use<UserRepository>();
_.For<IRequestRepository>().Use<RequestRepository>()
.SetLifecycleTo(uniqueRequest);
_.For<IRssRepository>().Use<RssRepository>();
_.For<IUserRepository>().Use<UserRepository>();
});在我想要使用这个属性的课堂上:
[SetterProperty]
public IUserRepository UserRepository { get; set; }也许问题是我在UserRepository中有构造函数?
private readonly IRequestRepository _repository;
public UserRepository(IRequestRepository repository)
{
_repository = repository;
}还有一个问题,在结构图文档中我们注入了接口,为什么不是类呢?我的意思是在构造函数和setter属性中,我们声明接口。
发布于 2016-04-28 08:43:05
我的问题的简单解决方案是使用.Setter:
_.For<IRssRepository>().Use<RssRepository>()
.Setter<IRequestRepository>().Is<RequestRepository>();https://stackoverflow.com/questions/36790327
复制相似问题