我需要在控制器中使用HtmlHelper,所以我如何在Controller(asp.net mvc 2.0)中创建它?在控制器中创建HtmlHelper实例
3
A
回答
8
这是你想要的吗?
Using HtmlHelper in a Controller
编辑
使用此;
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
您可以使用的方法是这样的:
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();
}
}
相关问题
- 1. CGLIB - 控制实例创建
- 2. 在其控制器中创建模型的实例
- 3. 如何在运行中创建/实例化AngularJs控制器?
- 4. FXMLLoader无法找到正在运行的控制器实例并创建新的控制器实例
- 5. 在state.go()创建的控制器的新实例()angular-ui-router
- 6. 在viewmodel中创建控件实例
- 7. angular-js:在UI路由器中创建控制器的多个实例
- 8. 切换视图控制器而不创建新实例
- 9. 如何创建实例到zend控制器
- 10. 编程方式创建一个控制器的新实例
- 11. segue创建视图控制器swift的新实例
- 12. 创建控制器
- 13. 创建控制器
- 14. 创建控制器
- 15. 如何在另一个视图控制器中控制实例
- 16. 在控制器中创建jstree jquery_ajax
- 17. 在CodeIgniter控制器中创建函数
- 18. 在控制器中创建一个link_to
- 19. 创建MVC.Net过滤器和htmlhelper库
- 20. HtmlHelper扩展 - 用户控制
- 21. 创建实例
- 22. 创建实例
- 23. 创建实例
- 24. 创建附加控制器以在控制台中捆绑
- 25. ASP.NET MVC - 如何在控制器中呈现HtmlHelper方法?
- 26. 如何为EmberJS中的每个视图实例创建一个控制器实例?
- 27. 在Azure应用服务的另一个控制器中实例化控制器
- 28. 控制器创建问题
- 29. AngularJS创建控制器
- 30. 创建CRUD控制器
见我的编辑就如何得到它的MVC 2.0 – griegs 2010-01-18 04:39:03
你想用的HtmlHelper一个视图之外什么工作? – Ajw 2010-01-18 04:49:36
我怀疑他正在试图构建传回给视图的控件。也许在jQuery的帖子后面。我宁愿有一个局部视图,我可以从视图呈现或从jQuery后发送回来,但是... ... – griegs 2010-01-18 04:54:43