这样送我发送的json数据如何从客户端
这样,我构建了一个类似于下面一个
function Post(carousel, first, last, per_page, page) {
var json = "{'Name':'" + $("input[id*='txtName']").val() +
"','Subject':'" + $("input[id*='txtSubject']").val() +
"','Email':'" + $("input[id*='txtEmail']").val() +
"','Message':'" + jQuery.trim($('.message').val()) + "'}";
$.ajax({
type: "POST",
url: "Feedback.aspx/SaveData",
data: json ,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
'here is my success code'
}
});
}
所以我的JSON数据后反序列化在服务器端JSON数据我只想知道如何用c#编写服务器端的代码,这会将我的json数据反序列化为反馈类。
我的反馈类具有相同的属性,如名称,主题,电子邮件,消息等,所以告诉我如何用反序列化来填充反馈类。
请帮我用代码。感谢
+1是的,joe在你的情况下是绝对正确的,即使你已经创建了对象也不需要反序列化,我现在已经为json编辑了它,而不是先前为webmethod参数的msg – abhijit
@abhi:其实,我拥有的方式是正确的。如果您传入包含这四个字段的对象,则您的方法将具有相同的4个参数。如果您传入的JSON对象包含一个字段,而该字段又有四个自己的字段,则该字段的名称将与C#中的参数名称(msg)匹配,并且JSON对象的字段名称将匹配'Feedback'类的属性名称。 'json'变量名不会被发送到C#代码中。 –
@ user728750:让生活变得更轻松的一件事就是使用JSON2.js库。它会让你获取一个JSON对象并将其转换为一个字符串,所以你不必担心那个部分 - 你可以使用一个普通的JSON对象,调用JSON.stringify(someobj)',它会给你一个可以在AJAX调用中使用的字符串。 –