我有2個問題。如何獲取控制器名稱和基礎控制器中的數據?
一,背景:
我有一個PageController : Controller
和SearchController : PageController
的PageController被定義爲:
public class PageController : Controller
{
protected ISite Site;
protected PageConfiguration PageConfiguration;
protected override void Initialize(RequestContext rc)
{
this.Site = new Site(SessionUser.Instance().SiteId);
this.PageConfiguration = this.Site.CurrentSite.GetPage(/* controller name */);
base.Initialize(rc);
}
}
我有網站& PageConfiguration存儲的PageController因爲每一個實現的PageController需求頁他們
問題1:
我想從現有的ASP.NET應用程序移植此。這需要一個頁面名稱才能獲得PageConfiguration對象。而不是頁面名稱,我將使用控制器的名稱。什麼是最好的方式讓我把它當作一個字符串?
問題2:
我試圖渲染的依賴於數據的PartialView,如下所示:
<%@ Page Title=""
Language="C#"
MasterPageFile="~/Views/Shared/Site.Master"
Inherits="System.Web.Mvc.ViewPage<PageConfiguration>" %>
<%@ Import Namespace="tstFactsheetGenerator.Models.Panels"%>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<% Html.RenderPartial("Search", new Search { PanelConfiguration = Model.Panels[0] }); %>
</asp:Content>
我可以看到,當的RenderPartial()方法被稱爲PageConfiguration型號有我需要的小組。但是在PanelConfiguration爲null的Search類的構造函數中。
還有什麼能讓我需要提供的頁面數據更好&更有效的方法是什麼?謝謝。
你能展示你如何設置Panel? – 2010-06-23 06:34:44
面板在創建PageConfiguration對象時設置。 – DaveDev 2010-06-23 08:19:52