2017-01-02 48 views
0

我有这样的行动中MVC是这样的:广东话中投数据动作PARAMS jQuery的AJAX - ASP.Net MVC

[HttpPost] 
    public virtual ActionResult AddAttachment(Guid scheduleId, DropZoneResultViewModel file2) 
    { 
     // do something here 
     return Json(true); 

    } 

,我有这样的JS代码:

var _data = { 
     scheduleId: '2867dc39-5455-10e6-4e6f-7ea197bc2f22', 
     file2: { 
      FileName: '12.jpg', 
      OriginalFileName: '1245', 
      FileSize: 12454, 
      ContentType: 'image/exe', 
      FileExtension: '.exe' 
     } 


    }; 


    $.ajax({ 
     url: addattachmneturl, 
     data: JSON.stringify(_data), 
       type: 'POST', 
       suucess: function (data) { 
        alert('yes , you can '); 
     }, 
       error: function (response) { 
     } 
    }); 

但它返回此错误消息:

参数字典中包含空参数'scheduleId'的非空值类型'System.Guid'

和_data的结果是:

{"scheduleId":"2867dc39-5455-10e6-4e6f-7ea197bc2f22","file2":{"FileName":"12.jpg","OriginalFileName":"1245","FileSize":12454,"ContentType":"image/exe","FileExtension":".exe"}}:"" 

回答

1

望着请求负载 -

var _data = { 
    scheduleId: '2867dc39-5455-10e6-4e6f-7ea197bc2f22', 
    file2: { 
     FileName: '12.jpg', 
     OriginalFileName: '1245', 
     FileSize: 12454, 
     ContentType: 'image/exe', 
     FileExtension: '.exe' 
    } 
}; 

我期望AddAttachment动作看起来应该follwing -

public virtual ActionResult AddAttachment(PayLoad _data){} 

其中PayLoad是 -

public class PayLoad{ 
    public Guid scheduleId{get; set ;} 
    public DropZoneResultViewModel file2{get; set;} 
} 
+0

谢谢,它的工作很好 –

+0

很高兴它有帮助。 –