2011-04-05 88 views
0

我是新來的mvc,mvp或任何你想叫他們。現在,我嘗試實施一個ReservationController,用戶首先選擇一個日期,然後獲取合適的時間建議列表。正如你應該知道的那樣,建議取決於選定的日期。這是我的問題/問題開始的地方。我應該:控制器和視圖之間的關係

1)將事件放入視圖界面中,如DateChanged,然後在控制器中訂閱它?

2)當選擇的日期改變時,從我的asp頁面調用控制器上的UpdateSuggestions。 (當時我必須控制方法public)

或者

3)更新控制器的構造函數的建議。

問候和THX的幫助

埃裏克

+1

請提供您使用MVC哪個版本的代碼示例和? – Andrew 2011-04-05 15:02:17

+0

日期選擇是通過鏈接完成的嗎? – Andrew 2011-04-05 15:05:09

+5

歡迎來到本網站。基於''mvc,mvp或任何你想要叫他們'',一個好的第一步將是找出你正在使用的框架,以及它和你可能混淆的其他框架之間的差異。 – StuperUser 2011-04-05 15:05:57

回答

0

我想你是誤會MVC是如何工作的。

如果你不清楚MVC是如何工作的話,那麼值得檢查一下像nerd dinnerScott Gu's blog

你可以有你的日期鏈接到一個動作像如下處理此:

[HttpGet] 
public ActionResult YourAction(DateTime date) 
     { 
      // Add action logic here 
      Manager suggestions = new Manager(); 
      var suggestions =suggestions.UpdateSuggestions(date) 

      // create view model 
      MyModel model= new MyModel(suggestions); 
      return View(model); 
     } 
0

你應該把你的視圖中的鏈接或表單指向該通行證的日期在一個動作的URL控制器。
此操作應將該日期作爲參數,獲取該日期的數據,並將其傳遞到呈現數據的單獨視圖。


您應該學習HTTP和網頁的基礎知識,以及ASP.Net MVC的基礎設計。
在你不明白的框架或系統中編寫代碼是沮喪和災難的祕訣。

0

對不起,但您在asp.net mvc中的知識非常差。更好地獲得一些知識,或者你不能讓它工作。但不管怎麼說

1)不存在意見事件MVC 2)查看不會調用contstructor在控制器 3)看到前兩個

7

你需要走出控制事件的思維框架的哪些驅動ASP.NET Web表單。儘管通過這種方式完成事情在技術上是可行的,但我會建議採取不同的路線。

您需要向用戶返回一個視圖,讓用戶在表單中輸入日期。然後,他們將表單發回服務器,另一個操作方法處理這篇文章。此方法獲取時間建議列表並返回一個視圖,並將這些時間作爲其模型。

看看這裏MVC的基礎知識一些體面的視頻:http://www.asp.net/mvc

+6

確切地說,MVC是請求 - 響應驅動的,因爲HTTP是無狀態的。我個人認爲WebForms惹惱了Web開發,但這是讓熟練的VB6開發人員在Web上運行的成本。 – StuperUser 2011-04-05 15:14:11

+2

非常真實 - 我認爲MVC已經做了大量的工作來增加ASP.NET web開發人員的技能。即使WebForms繼續保持優勢,也會有更多的人能夠正確理解它正在做什麼。說 - 我認識的所有使用MVC的開發人員現在都討厭使用WebForms。 – 2011-04-05 15:43:09

1

這裏是一個剛剛起步的人偉大的閱讀ASP.Net MVC的一些很好的例子。

http://www.asp.net/mvc

http://www.asp.net/mvc/tutorials/getting-started-with-mvc3-part1-cs

這兩個樣本包括書籍,帶你一步一步地創建一個MVC項目:

http://nerddinner.codeplex.com/

http://www.asp.net/mvc/samples/mvc-music-store

這可能不是回答你直接問題,但經歷這些樣本應該有助於說明MVC的工作方式,特別是如何在ASP.Net中使用它。 :-)

這裏還有一點關於MVC模式的背景。

http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller

http://msdn.microsoft.com/en-us/library/ff649643.aspx

相關問題