Создайте экземпляр HtmlHelper в контроллере - PullRequest
3 голосов
/ 18 января 2010

Мне нужно сделать с HtmlHelper в контроллере, так как я могу создать его в контроллере (asp.net mvc 2.0)?

Ответы [ 2 ]

8 голосов
/ 18 января 2010

Это то, что вы хотите?

Использование HtmlHelper в контроллере

EDIT

Используйте это;

System.IO.TextWriter writer = new System.IO.StringWriter();

var h = new HtmlHelper(new ViewContext(ControllerContext, new WebFormView("omg"), new ViewDataDictionary(), new TempDataDictionary(), writer), new ViewPage());

string g = h.TextBox("myname").ToString();
7 голосов
/ 09 января 2011

Вы можете использовать такой метод:

public static HtmlHelper GetHtmlHelper(this Controller controller)
{
 var viewContext = new ViewContext(controller.ControllerContext, new FakeView(), controller.ViewData, controller.TempData, TextWriter.Null);
 return new HtmlHelper(viewContext, new ViewPage());
}

public class FakeView : IView
{
 public void Render(ViewContext viewContext, TextWriter writer)
 {
  throw new NotSupportedException();
 }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...