關於MVC模型綁定有很多有用的信息。 我的問題源於這一事實,我試圖避免在我的MVC應用程序中創建強類型數據,因爲它大多數需要充當數據路由器。在jQuery和MVC控制器操作之間傳遞非結構化JSON
基本上,我在頁面上有一組字段,帶有一個類'輸入',我可以用jQuery('.input')
收集,迭代並填充到JavaScript對象中。然後我送這個給我的ASP.NET MVC控制器:
var inputData = my_serialize($('input');
$.ajax({
type:'POST',
url: '/acme/Ajax/CaptureInput',
dataType: "json",
data: { inputData: JSON.stringify(inputData) },
success: Page_Response_RegisterAndDeposit,
error: Page_AjaxError
});
在C#的一面,我有
public JsonResult CaptureInput(string inputDataAsJsonString)
{
JavaScriptSerializer JSON = new JavaScriptSerializer();
object inputData = JSON.DeserializeObject(inputDataAsJsonString);
這似乎是一個間接浪費的水平,我寧願傳遞數據作爲contentType:application/json並使CaptureInput接受object
或IDictionary
或甚至dynamic
。
,爲什麼你把它作爲JSON發送? – LukLed
因爲我最終希望使用相同的代碼發送更多結構化數據,其中包含遞歸定義的js對象。 JSON似乎比名稱 - 值對更適合。 –
Related/dupe of:http://stackoverflow.com/questions/5473156/how-to-get-a-dynamically-created-json-data-set-in-mvc-3-controller http:// stackoverflow。 COM /問題/ 5022958 /通過動態-JSON對象到C-尖銳-MVC控制器 –