【发布时间】:2015-03-27 09:23:03
【问题描述】:
我想创建一个 ViewHelper 来本地化我的 ASP.NET MVC 应用程序。像这样的:
public class Translator
{
private readonly ITranslationRepository _repo;
public Translator(ITranslationRepository repo)
{
_repo = repo;
}
public static string Translate(TranslationEnum translationEnum)
{
return _repo.GetTranslation(translationEnum, Session.LanguageId);
}
}
(剃刀)视图中的用法如下所示:
<p>@Translator.Translate(TranslationEnum.WelcomeMessage)</p>
现在问题当然是,我不能将Translate方法设为静态,因为我需要访问实例变量_repo。
如何将存储库注入到 ViewHelper 中,以便可以在上述视图中使用它?
【问题讨论】:
标签: asp.net-mvc dependency-injection ninject view-helpers onion-architecture