有沒有辦法在執行TryUpdateModel
期間控制更新順序?我需要一個屬性纔能有效更新其他屬性,但默認情況下,當另一個屬性正在更新時,第二個屬性仍然爲空。TryUpdateModel更新順序
什麼是默認更新順序?奇怪的是,我的代碼中所需的屬性在模型和表單中都是首先聲明的。我無法在Internet中找到有關此執行順序的任何信息。
有沒有辦法在執行TryUpdateModel
期間控制更新順序?我需要一個屬性纔能有效更新其他屬性,但默認情況下,當另一個屬性正在更新時,第二個屬性仍然爲空。TryUpdateModel更新順序
什麼是默認更新順序?奇怪的是,我的代碼中所需的屬性在模型和表單中都是首先聲明的。我無法在Internet中找到有關此執行順序的任何信息。
在執行TryUpdateModel的過程中,有沒有辦法控制更新順序?
不,沒有訂單可以保證,你不應該依靠任何訂單。這就是爲什麼你應該在模型完全綁定時執行驗證,而不是在視圖模型設置器中進行驗證。
您可以使用數據標註屬性或一旦你意識到他們是多麼有限的(尤其是在有條件的,更復雜的驗證的情況而言),切換到FluentValidation.NET這integrates very nicely與ASP.NET MVC和我比強烈建議您。
據我所知,活頁夾獲取屬性以便它們在類中輸入。最後我看到它做了一個GetProperties,這就是方法加載的方式。
但是,因爲這是一個私人實施,不要指望這一點。如果您有這種限制,請創建您自己的ModelBinder。