簡體   English   中英

模型活頁夾問題

[英]Model Binder issue

我在viewmodel上有一個只讀屬性,該屬性可從其他各種屬性計算值。 我不希望模型綁定程序在帖子上讀取它,因為並非所有源屬性都可用。

public class MyView
{
     public int MyReadOnlyProperty
     {
         get 
         {
             int result;
             //do stuff 
             return result;
         }
     }
}

我已經向控制器方法添加了[Bind(Exclude)]屬性,如下所示:

[HttpPost]
public ActionResult Create([Bind(Exclude = "MyReadOnlyProperty")]MyView viewModel)
{
}

但是,活頁夾仍讀取排除的屬性。 因此,當我發回上述控制器方法時,將執行MyReadOnlyProperty getter; 調用控制器方法之前 活頁夾正在讀取帖子上的屬性似乎很奇怪:我希望它僅使用表單值來設置它們。

誰能告訴我如何避免這種情況?

試試這樣:

[HttpPost]
public ActionResult Create(MyView viewModel)
{
   ModelState.Remove("MyReadOnlyProperty");
}

希望能幫助到你


編輯

[Bindable(false)]
public int MyReadOnlyProperty
     {
         get 
         {
             int result;
             //do stuff 
             return result;
         }
     }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM