2014-02-10 41 views
0

我們的項目具有不同的用戶界面(VIEWS)作爲單獨的項目。示例項目A將呈現VIEW_A,而項目B將呈現VIEW_B。但是這兩個項目都有一個包含Project Logo和其他常見內容的通用標題視圖(例如VIEW_HEADER)。現在,如果我想在項目/視圖A和B中呈現這個常見的VIEW_HEADER,我該如何做。現在我正在使用嵌入式視圖。在一個單獨的項目中,我創建了公共標題視圖,製作一個DLL並將其包含在項目A和B中。如何跨不同項目呈現常見VIEW(HTML和JavaScript)

是否還有其他優雅的解決方案?我聽起來很愚蠢,但我對MVC很陌生,請耐心等待。

回答

0

現在我正在使用嵌入視圖。在一個單獨的項目中,我創建共用首部認爲,做它的一個DLL,包括在項目A和B.

如果使用Razor Generator您選擇已經是最好的解決方案之一。否則,你必須嘗試。

它簡單而強大。 爲了開始使用它,你應該

  1. 安裝Razor Generator extension into your Visual Studio。這個插件是從剃鬚刀視圖生成c#文件所必需的。爲了強制生成自定義工具應該選擇。

  2. 添加RazorGenerator.Mvc圖書館項目(軟件包的安裝過程將被添加RazorGeneratorMvcStart是註冊PrecompiledMvcEngine靜態類)。

    public static class RazorGeneratorMvcStart { 
        public static void Start() { 
         var engine = new PrecompiledMvcEngine(typeof(RazorGeneratorMvcStart).Assembly) { 
          UsePhysicalViewsIfNewer = HttpContext.Current.Request.IsLocal 
         }; 
    
         ViewEngines.Engines.Insert(0, engine); 
    
         // StartPage lookups are done by WebPages. 
         VirtualPathFactoryManager.RegisterVirtualPathFactory(engine); 
        } 
    } 
    
  3. 添加引用從任何MVC應用程序庫項目以使用預編譯的視圖。