Jquery 在控制器中读取JSON对象
我有以下JQuery代码Jquery 在控制器中读取JSON对象,jquery,asp.net-mvc,json,Jquery,Asp.net Mvc,Json,我有以下JQuery代码 var selectedval = $("#PaymentApplication_System").val(); var text = $("#btnSave").val(); var payVal = $("#PaymentApplication_Amount").val(); var dbobj = [{ param: text, value: payVal}]; var jlist = $.toJSON(dbobj); 这给了我以下json对象 [{"param
var selectedval = $("#PaymentApplication_System").val();
var text = $("#btnSave").val();
var payVal = $("#PaymentApplication_Amount").val();
var dbobj = [{ param: text, value: payVal}];
var jlist = $.toJSON(dbobj);
这给了我以下json对象
[{"param":"Update Payment","value":"50.00"}]
我使用的是MVC2。如何从控制器中的对象读取值???MVC 2不会将JSON对象转换为模型,而MVC 3会
您必须使用。MVC 2不会将JSON对象转换为模型,而MVC 3会
您必须使用。MVC2不会自动将JSON字符串转换为C对象。您可以使用位于System.Web.Script.Serialization中的。例如:
public ActionResult Index(string customerJson)
{
var serializer = new JavaScriptSerializer();
var customer = serializer.Deserialize<Customer>(customerJson);
return View(customer);
}
公共操作结果索引(字符串customerJson)
{
var serializer=新的JavaScriptSerializer();
var customer=serializer.Deserialize(customerJson);
返回视图(客户);
}
这可以作为一个扩展metod(或者如果您有任何扩展metod,可以将其放在一个基本控制器中):
公共静态类控制器扩展
{
public T JsonDeserialize(此控制器实例,字符串json)
{
var serializer=新的JavaScriptSerializer();
返回序列化程序。反序列化(json);
}
}
然后,您可以将其用作:
public ActionResult Index(string customerJson)
{
var customer = this.JsonDeserialize<Customer>(customerJson);
return View(customer);
}
公共操作结果索引(字符串customerJson)
{
var customer=this.JsonDeserialize(customerJson);
返回视图(客户);
}
MVC2不会自动将JSON字符串转换为C对象。您可以使用位于System.Web.Script.Serialization中的。例如:
public ActionResult Index(string customerJson)
{
var serializer = new JavaScriptSerializer();
var customer = serializer.Deserialize<Customer>(customerJson);
return View(customer);
}
公共操作结果索引(字符串customerJson)
{
var serializer=新的JavaScriptSerializer();
var customer=serializer.Deserialize(customerJson);
返回视图(客户);
}
这可以作为一个扩展metod(或者如果您有任何扩展metod,可以将其放在一个基本控制器中):
公共静态类控制器扩展
{
public T JsonDeserialize(此控制器实例,字符串json)
{
var serializer=新的JavaScriptSerializer();
返回序列化程序。反序列化(json);
}
}
然后,您可以将其用作:
public ActionResult Index(string customerJson)
{
var customer = this.JsonDeserialize<Customer>(customerJson);
return View(customer);
}
公共操作结果索引(字符串customerJson)
{
var customer=this.JsonDeserialize(customerJson);
返回视图(客户);
}
我认为这篇文章可以帮助有类似问题的人:
我认为这篇文章可以帮助有类似问题的人:
FYI MVC3确实包含一个自动处理此问题的JsonValueProviderFactory。@murki是的,我知道。这个问题是针对MVC2的,它没有处理这个问题。仅供参考,MVC3确实包含一个自动处理这个问题的JsonValueProviderFactory。@murki是的,我知道。这个问题是针对MVC2的,MVC2没有处理这个问题。