![](/img/trans.png)
[英]MVC3 Action Call from Javascript ReturnUrl parameter always null
[英]javascript call MVC Controller parameter always null when object field is private
我使用javascript調用控制器來處理函數。 當字段設置為私有時,參數值(摘要中的名稱)為null。 當該字段設置為public時,它將起作用。 設置為公開的唯一途徑嗎? 還是有更好的方法呢? 提前致謝。
我的對象
[DataContract]
public class Summary
{
[DataMember]
public int id { private set; get; }
[DataMember]
public string name { private set; get; }
public summary() {}
public summary(int id, string name)
{
id = id;
name = name;
}
}
MVC控制器
public ActionResult SetSummary(Summary summary)
{
string anme = summary.name; **<-- null if private**
...
}
使用Javascript
$http.post("MyController/SetSummary", JSON.stringify({
summary: mySummaryObject}))
.success(function (data, status, headers, config) {
....
}
是的,它應該是公共的,因為defaultmodelbinder將瀏覽器請求映射到數據對象。 此類提供了模型綁定器的具體實現。
DefaultModelBinder類將以下類型的對象映射到瀏覽器請求:
基本類型,例如String,Double,Decimal或DateTime對象。
模型類,例如人,地址或產品。
集合,例如ICollection,IList或IDictionary。
來源: https : //msdn.microsoft.com/zh-cn/library/system.web.mvc.defaultmodelbinder(v=vs.118).aspx
希望它有用,讓我知道您的想法或反饋
謝謝
KARTHIK
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.