2012-05-10 87 views
0

有沒有辦法在執行TryUpdateModel期間控制更新順序?我需要一個屬性纔能有效更新其他屬性,但默認情況下,當另一個屬性正在更新時,第二個屬性仍然爲空。TryUpdateModel更新順序

什麼是默認更新順序?奇怪的是,我的代碼中所需的屬性在模型和表單中都是首先聲明的。我無法在Internet中找到有關此執行順序的任何信息。

回答

2

在執行TryUpdateModel的過程中,有沒有辦法控制更新順序?

不,沒有訂單可以保證,你不應該依靠任何訂單。這就是爲什麼你應該在模型完全綁定時執行驗證,而不是在視圖模型設置器中進行驗證。

您可以使用數據標註屬性或一旦你意識到他們是多麼有限的(尤其是在有條件的,更復雜的驗證的情況而言),切換到FluentValidation.NETintegrates very nicely與ASP.NET MVC和我比強烈建議您。

0

據我所知,活頁夾獲取屬性以便它們在類中輸入。最後我看到它做了一個GetProperties,這就是方法加載的方式。

但是,因爲這是一個私人實施,不要指望這一點。如果您有這種限制,請創建您自己的ModelBinder。