2013-11-22 17 views
0

我通過ajax調用發送一個json對象到控制器,ajax調用的數據屬性顯示正確的數據。在發佈到控制器的方法 - 已收集的參數具有收集和它的計數完美顯示,但集合內的屬性不顯示值。沒有得到JSON對象(有一個集合)正確地在控制器中使用Ajax調用

下面是代碼 -

控制器 -

[HttpPost] 
public ActionResult ImageOperations(ImageProcessingModel imageProcessingModel) 
{ 
    return Json("sucess"); 
} 

型號 -

public class ImageProcessingModel 
{ 
    public string Source { get; set; } 
    private List<ThumbnailImageSubTaskModel> _thumbnailImageSubTaskModel; 
    public List<ThumbnailImageSubTaskModel> ThumbnailImageSubTaskModel 
    { 
     get 
     { 
      if (_thumbnailImageSubTaskModel == null) 
      { 
       _thumbnailImageSubTaskModel = new List<ThumbnailImageSubTaskModel>(); 
      } 
      return _thumbnailImageSubTaskModel; 
     } 

    } 
} 

js-

var ImageProcessingModel = 
{ 
    "Source": "test", 
    "ThumbnailImageSubTaskModel":allThumbnails.allItems() 
} 

allThumnails.allItems是ko.observableArray(),它具有價值。

$.ajax({ 
    url: '/ImageProcessingTask/ImageOperations', 
    type: 'Post', 
    data: ImageProcessingModel, 
    success: function (data, status) { 
     processEscapeKeyPress = true; 
     var fn = window[successCallback]; 
     fn(data, passDataToCallback); 
    }, 
    error: function (xhr, desc, err) { 
     alert(err); 
     processEscapeKeyPress = true; 
     processAjaxError(xhr, desc, err); 
    }, 
    }); 

這裏有所有的值和源ImageProcessingModel是簡單的字符串所以這個值在控制器只有ThumbnailImageSubTaskModel來顯示計數,但不是它的價值。 謝謝!

回答

0

將JSON通過AJAX發送給MVC時遇到的一個常見問題。許多人忘記在他們的AJAX請求中設置數據的類型。

嘗試將數據類型和的contentType:

$.ajax({ 
    url: '/ImageProcessingTask/ImageOperations', 
    type: 'Post', 
    **contentType: 'application/json; charset=UTF-8', 
    dataType: 'json',** 
    data: ImageProcessingModel, 
    success: function (data, status) { 
     processEscapeKeyPress = true; 
     var fn = window[successCallback]; 
     fn(data, passDataToCallback); 
    }, 
    error: function (xhr, desc, err) { 
     alert(err); 
     processEscapeKeyPress = true; 
     processAjaxError(xhr, desc, err); 
    }, 
}); 
+0

如果事件失敗,請嘗試JSON.stringify您的數據: 數據:JSON.Stringify(ImageProcessingModule), –

+0

@ stefchri-都嘗試的方式,但仍問題依然存在。 – monu

相關問題