簡體   English   中英

在ASP.NET MVC中的控制器之前創建視圖

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

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