似乎有多種方法將模型數據從asp.net mvc中的控制器傳遞到視圖。我不清楚在mvc v1和v2版本中是否有推薦的方法,或者如果像生活中的大多數事情一樣,這取決於它。我已經看到了幾種方法:如何決定將模型數據從asp.net mvc控制器傳遞到視圖的方式?
選項1 - 通過在視圖中強制類型化或以強類型方式通過創建強類型自定義模型類來填充控制器的ViewData dixtionary,或者使用基於字符串的索引方式填充控制器的ViewData dixtionary,以及通過ViewData傳遞。
選項2 - 使用ViewData.Model,我不知道我甚至不明白。
選項3 - 使用ViewPage.Model,在這種情況下,我不知道如何從控制器傳遞模型數據。
我見過很多帖子poo-pooing選項1和2,但我不明白爲什麼。這些帖子在大多數情況下似乎強烈推薦3。
你如何解決這個問題?有沒有標準的方法?
+1是靈活的,而不是說你總是需要一個強類型的模型。 – jfar 2010-08-10 00:13:24
感謝您的好評。後續幾項:首先,您的YourViewModel類與ProductsListViewData類似,它在http://bit.ly/eWN6R的「方法2:傳遞ViewData使用強類型類」部分中顯示?其次,我的選項1和選項2都是指ViewData,但是當我通過ViewPage.ViewData [「whatever」]訪問ViewData和通過ViewData.Model訪問ViewData時,我不清楚這一點。 – Emilio 2010-08-10 00:55:12
非常感謝,你完全清楚了這兩點。 – Emilio 2010-08-10 03:24:38