首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ODataController Post方法“未定义”

ODataController Post方法“未定义”
EN

Stack Overflow用户
提问于 2016-02-01 14:40:09
回答 1查看 167关注 0票数 2

我有一个OData控制器,它的操作如下:

代码语言:javascript
复制
[HttpPost]
[ODataRoute("PostUpdate")]
public async Task<string> PostUpdate(HttpRequestMessage eventsToUpdate)
{

 //Do something
}

这就是我通过ajax调用调用控制器的方式:

代码语言:javascript
复制
var updateDataArray = [];
for(i=0;i<5;i++)
{
  //Build the data
  var updatedT = {
   "Id" : (Id)?Id:0,
   "Desc" : CalculatedDesc
   }
   updateDataArray.push(updatedT);
}

Url = "Api/Odata/PostUpdate"

$.ajax({
url :Url,
type:"POST",
data:updateDataArray ,
dataType : 'json',
success : function(result) {

}
});

问题是当控件在Action方法中时,当我将eventsToUpdate.Content.ReadAsStringAsync().Result放在即时窗口中时,我得到的输出是:"Undefined :&undefined",这里有什么问题?

EN

回答 1

Stack Overflow用户

发布于 2016-02-01 14:55:39

问题出在PostUpdate方法的参数上。在ajax中,要调用带有数据的方法,必须将参数名称与数据类型匹配。首先,使用HttpRequestMessage类型创建一个名为eventsToUpdate的json对象,并像这样调用:

代码语言:javascript
复制
$.ajax({
url :Url,
type:"POST",
data: eventsToUpdate,
dataType : 'json',
success : function(result) {

}
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35124358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档