我对我的服务进行了以下调用,即返回list<string>
当我运行此操作时,我收到错误消息。
$(document).ready(function () //executes this code when page loading is done
{
$.ajax({
type: "POST",
url: "Services/pilltrakr.svc/getAllUsers",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
alert(response.d);
},
error: function (message) {
alert("error has occured : " + message);
}
});
});
如何从WCF服务返回列表?
接口
[OperationContract]
[WebInvoke(Method = "POST",
BodyStyle = WebMessageBodyStyle.Wrapped,
ResponseFormat = WebMessageFormat.Json,
RequestFormat = WebMessageFormat.Json)]
List<string> getAllUsers();
类别:
public List<string> getAllUsers()
{
userAccount ua = new userAccount();
List<string> myUserList = new List<string>();
myUserList = ua.getAllUsers();
return myUserList;
}
更新
我将BodyStyle属性更改为WrappedRequest,然后一切正常(我尝试了GET和POST)。然后返回数据。现在我的问题是为什么这个改变解决了这个问题?我是否总是需要包含BodyStyle?
[OperationContract]
[WebInvoke(Method = "POST",
BodyStyle = WebMessageBodyStyle.WrappedRequest,
ResponseFormat = WebMessageFormat.Json,
RequestFormat = WebMessageFormat.Json)]
List<string> getAllUsers();
答案 0 :(得分:0)
我将BodyStyle属性更改为WrappedRequest,然后一切正常(我尝试了GET和POST)。然后返回数据。现在我的问题是为什么这个改变解决了这个问题?我是否总是需要包含BodyStyle?