簡體   English   中英

Html.RenderPartial-渲染部分視圖位於另一個文件夾中

[英]Html.RenderPartial - Render Partial View located in another folder

我在文件夾Views-Department中具有“ Create.cshtml”視圖。 我想使用部分視圖,該視圖位於根目錄“ CommonViews”上的文件夾中,名稱為“ _EnterpriseStructure.cshtml”。 我正在使用語法RenderPartial

 @{Html.RenderPartial("~/CommonViews/_EnterpriseStructure.cshtml");}

部分視圖代碼

<div id="Client">
   This is a Partial View.
</div>

執行后,我得到了System.InvalidOperationException。

詳細錯誤為:

“〜/ CommonViews / _EnterpriseStructure.cshtml”上的視圖必須派生自WebViewPage或WebViewPage。

我正在使用ASP.Net MVC 5 Razor Views

我發現Razor視圖引擎正在文件夾“視圖/共享”,“視圖/部門”中進行搜索。 當我將部分視圖移動到“共享”文件夾時,它起作用了。 您不能包含路徑,只需提供視圖名稱即可。 並添加文件夾以搜索View引擎。 我不知道的是“如何為View Engine提供更多搜索位置?”

我想您應該在您的MVC項目中使用T4MVC nuget包。 一旦程序包包含在項目中,您只需在項目(解決方案資源管理器)中選擇“ T4MVC.tt”文件,然后說“ Run Custom Tool”。 而已。 這將為您的MVC項目中的幾乎所有內容創建常量。 這意味着,所有視圖,控制器,操作,javascript文件,資源,css文件,圖像等現在都具有常量。這樣,您可以避免在方法中對視圖等使用硬編碼的字符串,並可以使用生成的常量由T4MVC。 您無需擔心視圖路徑等問題。T4MVC非常有效,對於MVC項目來說是必須的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM