2011-12-21 78 views
2

問:如何創建一個在動作方法中可用的動作過濾器中實例化的對象?在動作過濾器中實例化視圖模型?

背景:

我有許多形式(除其他事項外)在MVC的網站。

每個都有自己的viewmodel,它從基類型(FormPage)繼承。

我的約定是將viewmodel類型命名爲前綴爲「Form」的操作名稱。所以我的ContactUs視圖模型是FormContactUs:FormPage。

許多基本viewmodel屬性爲所有表單設置相同,並且我有一個通用實用程序functon,我在action方法內部調用它來執行此操作。

設置視圖模型,根據操作名稱和命名約定選擇類型,以及設置操作過濾器內所有表單的基本屬性,這將使這只是一個簡單的操作。我唯一的障礙似乎是弄清楚如何在action-method中的過濾器中實例化一個對象。

+1

你可以在你的問題區域顯示一些代碼嗎? – Jan 2011-12-21 11:51:13

回答

3

問:我如何創建一個在動作方法中可用的動作過濾器中實例化的對象?

您可以將其存儲在HttpContext.Items中,該請求在整個請求生命週期中都可用。這就是說,自定義模型綁定器似乎更適合您的場景,而不是動作過濾器。

相關問題