[英]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.