В проекте Mvc Я не могу вызвать метод в представлении, используя экземпляр. Я использовал AutoFac для инъекций зависимостей.Невозможно вызвать метод в представлении с использованием экземпляра?
В HomeController.cs
public readonly IMyClass _myClass;
public HomeController(IMyClass myClass)
{
_myClass = myClass;
}
В MyClass У меня есть один Перевести метод, который принимает строку в качестве параметра и дает преобразованную строку в качестве вывода, основанного на коде языка.
Я сделал это в контроллере, который работает нормально.
var myModel = new MyModel
{
Message = _myClass.Translate("Welcome")
};
return View("Index", myModel);
Но я не хочу его через Model
я хотел бы назвать Translate
в View
Я попытался назвать это Translate method
из Index.cshtml
зрения, как следующее:
_myClass.Translate("Welcome")
Я думаю, что я пропустил что-то, но что?
Что вы имеете в виду, не можете назвать метод? Как получить доступ к полям вашего контроллера - http://stackoverflow.com/questions/1417168/asp-net-mvc-access-controller-instance-from-view? –
Зачем вам нужно вызывать метод на вашем контроллере с точки зрения !? Вы даже пытаетесь сделать это, это плохая практика. То, что вам нужно сделать, это то, что делает этот метод, вернуть его в представление с помощью модели. –
Назовите его в методе действий и передайте результат в представление, используя модель или сумку для просмотра. –