2015-06-23 88 views
0

我已經對控制器的操作方法和視圖之間的關係的幾個概念問題:¿控制器的操作方法和視圖之間的關係?

  • 我看到視圖的名稱是控制器的名字的功能;控制器類的名稱與視圖的命名空間相同(由其中是.cshtml文件的文件夾的名稱表示),並且該方法的名稱與作爲視圖的.cshtml文件的名稱相同。它爲什麼這樣工作?如果我錯過了解釋中的某些內容,它究竟是如何工作的?

  • 有沒有一種方法可以將.cshtml文件(視圖)從與控制器類名稱相匹配的文件夾外部放置?

  • 是否受到MVC的限制:.cshtml文件的名稱與控制器操作方法的名稱相匹配?

  • 控制器操作方法中返回的View()方法究竟是什麼?

  • 爲什麼控制器類的方法被稱爲「控制器操作方法」?

  • MVC中的限制條件是控制器名稱以「Controller」字樣結尾?

感謝所有

回答

1

我會強烈建議通過對MVC,教程運行像這樣CodeProject上tutorial

  • 命名約定並非一成不變,但通常允許一個可以理解的結構。
  • 是的,要導航到視圖,您可以指定路徑。 return View("~/this/is/your/path/ViewName.cshtml");
  • 否如上所述,假設返回類型符合方法的返回類型(如下所述),您可以使用正確路徑從任何方法返回任何視圖。
  • View()是一個C#「方法」,它告訴項目導航到您指定的視圖以及您傳遞的任何參數。通過查看docs可以找到更加正確和深入的答案。默認return View()試圖導航到return View("MethodName");
  • Action methods是具有返回類型ActionResult的方法。重定向和查看就是這樣的例子。將它們視爲與對象返回類型相似,如voidstring,但ActionResult會告訴您的項目執行某些操作,例如重定向到其他方法或通過View()返回ViewResult。
  • 號請試試!然而,這通常是好的做法,因爲它可以很容易地按名稱分隔文件,因爲在您的項目中可能會有類似的文件名。
相關問題