キャッスルウィンザーは初めてです。依存関係の解決に関しては、.NETMVCアプリケーションで完全に正常に機能しています。現在、コンストラクターインジェクション(Eg1)またはプロパティインジェクション(2)を使用して、コントローラーの依存関係を解決しています。問題は、プロパティインジェクションを使用して別のクラス(コントローラークラスではない)の依存関係を解決しようとすると、これが自動的に解決されないことです(例3)
例1-解決OK!
public class HomeController : Controller
{
private IUserRepo _userRepo;
public HomeController(IUserRepo userRepo)
{
_userRepo = userRepo;
}
public ActionResult Show()
{
return View(userRepo.GetAllUsers());
}
}
例2-解決OK!
public class HomeController : Controller
{
public IUserRepo _userRepo {get;set;}
public HomeController()
{
}
public ActionResult Show()
{
return View(_userRepo.GetAllUsers());
}
}
例3-未解決!
public class ValidationRepository
{
public IUserRepo _userRepo {get;set;}
public bool ValidateUser()
{
//Here _userRepo is never resolved.
// NB: I want property injection instead of constructor injection, is there any way?
}
}
ありがとう