[英]Creating a View Before the Controller in ASP.NET MVC
我通過在“解決方案”的“視圖”文件夾下創建一個新文件夾來創建“剃刀視圖”,然后右鍵單擊該文件夾並選擇“添加視圖”。
后來,我轉到我的Controller文件夾,右鍵單擊它,選擇“添加控制器”。 但是,現在我想將我創建的視圖附加到控制器上,Visual Studio在執行此操作時無法識別我的視圖存在:
return View("MyViewName");
如何使Visual Studio識別我已經存在的視圖? 我寧願不使用Resharper創建我的Razor視圖來解決該問題(因為我已經創建了該視圖)。
提前致謝!
無需編寫任何內容,您的文件夾必須命名為控制器。 如果需要其他文件夾名稱,請鍵入完整路徑:
return View("~/Views/MyCustomFolder/MyViewName.cshtml");
這是ASP.NET MVC的配置概念約定。您的控制器動作應與視圖相同:
public class MyBeautifulController : Controller
{
public ActionResult MyActionIndex()
{
return View();
}
}
謝謝你的觀點應該像這樣被調用和定位: ~/Views/MyBeautiful/MyActionIndex.cshtml
基本上,您可以在控制器類名稱中刪除最后一個“控制器”。
這就是COC(配置公約)。 現在,如果要調用未像操作那樣調用的視圖,則將在操作中執行以下操作:
public class MyBeautifulController : Controller
{
public ActionResult MyActionIndex()
{
return View("ViewCalledDifferently", new MyModel());
}
}
在這種情況下,您的視圖將按如下所示被調用和定位: ~/Views/MyBeautiful/ViewCalledDifferently.cshtml
並將MyModel作為模型類型。
希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.