Asp.net-Mvc

可以跨多個 mvc 3 項目共享視圖

  • April 17, 2013

我正在一個解決方案下建構幾個不同的 asp.net mvc 3 web 項目。我希望能夠在所有這些項目中使用一些視圖,因為它們都將在 2 或 3 個不同的頁面上顯示相同的內容(每個應用程序都插入了一些自定義內容)。

這可能嗎?

我能想到的唯一一件事就是將你的 cshtml 編譯成一個單獨的程序集(假設你使用的是 RAZOR)。見這裡

一般來說,我還沒有看到很多多項目 ASP.NET MVC 解決方案的範例。因為這有點沒有意義。它使事情複雜化,它忽略了areas,這可能被用來獲得相同的體驗,但比多個 MVC 項目要好得多。那麼問題來了,這 3 個項目是否有這麼多共同點,以至於它們真的應該都在一個解決方案中。您實際上擁有什麼樣的 MVC 應用程序?他們在做什麼?大多數線上範例解決方案是單個 MVC 項目和多個類庫項目。

現在到實際的問題..我最近發現自己在做類似的事情,實際上我在一個解決方案中沒有多個項目,但我有不同的獨立項目,它們都可以從一個單一的視圖中受益,我們可以說“大師“ 項目。我最終Nuget為它創建了包。實際上,我還向包中註入了其他東西(腳本、樣式、圖像等),但您也只能將其用於視圖。然後,您只需將包添加到下一個項目,它將包中的文件插入到目標項目中。我想說的是,您的包不一定必須包含程式碼。

我不會在這裡詳細介紹,但您應該研究一下。

引用自:https://stackoverflow.com/questions/7134025