유효성 검사를 수행하기 위해 데이터베이스를 조회해야하는 곳에서 유효성 검사 속성을 설정했습니다. 나는 프로젝트의 다른 곳에서와 같은 방식으로 속성 주입을 시도했지만 작동하지 않습니다. 어떤 단계가 빠졌습니까? 지적하는MVC의 ValidationAttribute에 대한 Ninject에서 속성 주입을 어떻게 얻습니까?
public class ApplicationIDValidAttribute : ValidationAttribute
{
[Inject]
protected IRepository<MyType> MyRepo;
public override bool IsValid(object value)
{
if (value == null)
return true;
int id;
if (!Int32.TryParse(value.ToString(), out id))
return false;
// MyRepo is null here and is never injected
var obj= MyRepo.LoadById(id);
return (obj!= null);
}
또 한가지, 내가 아닌 공용 속성을 주입하기 위해 설정 한 Ninject에 커널을 가지고, 그래서 그게 문제라고 생각하지 않습니다. Ninject 2, MVC 2 및 MVC 2 버전의 Ninject.Web.MVC를 사용하고 있습니다.
감사합니다.
감사합니다. 서비스 위치 정보가 도움이 될 것 같습니다. – jaltiere