這樣送我發送的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調用中使用的字符串。 –