簡體   English   中英

Asp.net Mvc結構

[英]Asp.net Mvc Structure

我有以下視圖結構:

Views/Level1/Level2/View.aspx
Views/Level1/Level2/DisplayTemplates/MyDisplayTemplate.ascx

為此,在我的行動中,我必須這樣做:

return View("Areas/Area1/Views/Level1/Level2/View.aspx", model);

一切都很好...

除了。 顯示模板明顯丟失或什么? 我的模型上有UiHint,我嘗試致電

Html.DisplayFor(x=>x.Property, "PathToDisplayTemplate") 

也是,但似乎沒有什么想讓它做它的:g

有什么線索嗎?

根據我的經驗,我不會在控制器中編寫局部視圖,而是會使用普通視圖,然后在該視圖或其視圖模型中處理局部視圖,我將嘗試看看如何用您的方式進行操作,但至少在這里我該怎么做。

編輯-哦

return View("Areas/Area1/Views/Level1/Level2/View.aspx", model);

會返回普通視圖,但是由於您要求顯示溫度,因此應該是ascx,因此可能就是問題所在。

注意:也請閱讀評論...

您是否只有:

Html.DisplayFor(x=>x.Property, "MyDisplayTemplate")

然后,它將在與視圖相同的文件夾中查找DisplayTemplates文件夾,並在其中查找MyDisplayTemplate.ascx


另外,如果您return View("Areas/Area1/Views/Level1/Level2/View.aspx", model);有此要求: return View("Areas/Area1/Views/Level1/Level2/View.aspx", model); 可能出了點問題,我想不出為什么您需要這么明確。

MVC將在該控制器的文件夾中查找視圖(例如,HomeController,在視圖中將有一個名為“ Home”的文件夾)

然后,它將使您的操作名稱與該文件夾中的視圖名稱匹配。 例如,如果您有公共ActionResult Index(),它將在Views / Home / Index.aspx中查找

也就是說,如果您要傳遞模型,則只需編寫“ return View()”或“ return View(model)”。

希望我沒有誤解您的要求,並告訴您一些您已經知道的事情,

此致,Kohan。

暫無
暫無

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

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