2012-05-06 203 views
0

我使用以下模板創建了一個樣本MVC applicationASP.Net MVC控制器和視圖交互

ASP.NET MVC2空Web應用

然後,添加的First名稱和權利Controller點擊ActionResult添加View

我在我的瀏覽器中輸入了http://localhost:49565/First

查詢

如何在內部去了解某個特定頁面將顯示,當我們將鍵入http://localhost:49565/First控制器?

此外,如果我爲Controller添加多個視圖。系統將如何決定哪一個將顯示在優先級上?

+1

歡迎來到計算器。你關於MVC的問題是關於框架的非常非常基本的元素。我建議你在這裏發佈問題之前,先看看網絡上初學者的許多教程之一。例如:http://www.asp.net/mvc/tutorials/getting-started-with-aspnet-mvc3/cs/intro-to-aspnet-mvc-3 – Faust

+0

歡迎來到我的第一個問題。閱讀MVC教程後,這是一個非常具體的問題。你知道答案嗎? – Nilish

回答

1

控制器由MVC框架,它使用在Global.asax.cs中定義的路線,以確定哪些控制器和動作調用的想法調用。有一條默認路由,如下所示:

routes.MapRoute(
    "Default", // Route name 
    "{controller}/{action}/{id}", // URL with parameters 
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults 
); 

當應用程序收到請求時,會嘗試將URL解析爲路由的格式。如果請求是http://localhost:49565/,則它將使用默認值,該值將轉到名爲HomeController的控制器中的Index操作。當您創建新控制器FirstController並致電http://localhost:49565/First時,它將使用FirstController而不是HomeController,因爲它已提供(但仍爲Index操作)。另外,當一個動作被調用並且沒有明確定義視圖時,它將查找與被調用的動作命名相同的視圖。在你的情況下,它將是~/Views/First/Index.aspx

編輯

如果你想使用另一種觀點認爲,你可以在return語句

return View("OtherView"); 

指定它,它會使用~/Views/First/OtherView.aspx代替。

+0

我有兩個視圖'1。 Index.aspx和View1.aspx'每當我在瀏覽器中鍵入'http:// localhost:49565/First'時,我如何調用'View1.aspx'。現在它總是顯示「Index.aspx」頁面。 – Nilish

+0

感謝它幫了很多。由於聲譽較差,我無法贊成。:) – Nilish

相關問題