짧게 요약하면 ELMAH를 MVC 2 및 Ninject와 함께 사용하려고하므로 매개 변수없는 생성자를 사용해야합니다. 여기에 대한 초기 게시물을 작성했습니다 : Using a parameterless controller constructor with Ninject?생성자 주입 대신 속성 주입 사용
생성자 주입 대신 속성 주입을 사용하는 것이 좋습니다. 내가 DepartmentsRepository 또는 _departmentsRepository에 액세스하려고 여부를
public class DepartmentsController : Controller
{
private IDepartmentsRepository _departmentsRepository;
[Inject]
public IDepartmentsRepository DepartmentsRepository
{
get { return _departmentsRepository; }
set { _departmentsRepository = value; }
}
...
}
하지만 내 다른 컨트롤러 기능에
가, 내가 인스턴스로 설정하지 않은 객체 참조를 얻을이에public class DepartmentsController : Controller
{
private IDepartmentsRepository departmentsRepository;
public DepartmentsController(IDepartmentsRepository departmentsRepository)
{
this.departmentsRepository = departmentsRepository;
}
...
}
: 그래서 나는이에서 이동 액세스하려고하면 개체 오류가 발생합니다.
내가 여기서해야 할 다른 것이 있습니까?
당신은'Ninject.Web.Mvc'을 사용하고 있습니까? –
기다려주세요. 매개 변수없는 생성자를 사용해야하는 이유는 무엇입니까? – jfar
속성에 특정 이름이있을 때 특정 종속성이 해결되지 않는 이상한 문제가 있습니다. 이름을 바꾸면 제대로 작동하지만 다른 모든 종속성은 정상적으로 처리됩니다 (동일한 속성 이름의 다른 경우에는 동일한 종속성이 정상적으로 해결됩니다). 왜 그런 단서가 없지만 항상 시도해 볼만한 것이 있습니다. –