我們正在將ASP.NET MVC 1.0應用程序升級到2.0版本,並且一些代碼需要使用需要HtmlHelper進行渲染的LinkExtensions。雖然我們知道某些代碼沒有正確地遵循MVC模型,並且正在根據需要進行重新編碼,但我們需要一些工作,因此需要構建應用程序。如何在ASP.NET MVC 2.0的視圖之外創建HtmlHelper?
這是當前的語法,我們有在ASP.NET MVC 1.0的工作原理:
public static HtmlHelper GetHtmlHelper(ControllerContext context)
{
return new HtmlHelper(new ViewContext(context,
new WebFormView("HtmlHelperView"),
new ViewDataDictionary(),
new TempDataDictionary()),
new ViewPage());
}
,我們得到的錯誤如下:
錯誤1「的System.Web .Mvc.ViewContext」不包含一個構造函數4個參數
是的,我注意到TextWriter參數,但不知道它來自哪裏,謝謝!關於爲什麼我們不這樣做,我們的應用程序中的幾個頁面有相當複雜的鏈接,這些鏈接是通過LinkExtensions.ActionLink根據DataTable中的信息生成的。但是,由於這不是最好的做法,我們正在尋找更好的方式來處理鏈接(很可能是自定義控件)。現在,我們只需要構建和運行所需的東西,這樣我們就可以在嘗試新版本時重新開始測試。 – rjzii 2010-06-21 12:41:20