我可以通過編程獲取將在asp.net MVC應用程序中使用的主頁名稱的最早點是什麼?在asp.net MVC中獲取主頁名稱
正在改變視圖數據的想法取決於母版頁。我希望能夠儘早設置一些內容,以便單個開發人員不需要知道如何填充它。理想情況下,它只會發生在後臺。
在simplist場景中,我們可以針對不同類型的頁面使用不同的主頁面,例如默認的頁面,leftnav,rightnav和footer,或者可能缺少rightnav的安全頁面。
感謝
我可以通過編程獲取將在asp.net MVC應用程序中使用的主頁名稱的最早點是什麼?在asp.net MVC中獲取主頁名稱
正在改變視圖數據的想法取決於母版頁。我希望能夠儘早設置一些內容,以便單個開發人員不需要知道如何填充它。理想情況下,它只會發生在後臺。
在simplist場景中,我們可以針對不同類型的頁面使用不同的主頁面,例如默認的頁面,leftnav,rightnav和footer,或者可能缺少rightnav的安全頁面。
感謝
我說當你的母版頁被稱爲將是正確後,您的觀點已經得到您的視圖引擎解決的地步。
public ActionResult Index()
{
return View("index","masterpagename");
}
我認爲,如果你想與你的母版任何會被方式:您可以打電話時,你的控制器查看方法雖然設置你的母版。我不知道你的問題的上下文,但我認爲你想操縱視圖和/或viewdata取決於哪個masterpage被使用?也許問題的解決方案不是以編程方式首先獲取masterpage的名稱?
此外,編輯之後: 您可以做的是創建一個新的「基本」控制器,它繼承了默認的控制器類。然後你重寫查看方法,並告訴你的開發人員使用:
public class MySuperController : Controller
{
protected override ViewResult View(string viewName, string masterName, object model)
{
// do something here so your masterpage is different depending on the context //
string newMasterName = "something-something";
return base.View(viewName, newMasterName, model);
}
}
我認爲'所有其他視圖方法既可以通過這個被路由,或者在你的情況不使用(那些需要你傳遞一個IView)。
是的,這是正確的,從本質上改變視圖數據取決於使用的母版頁。 – NikolaiDante 2009-02-17 11:37:54