我正在尝试使用jQuery + Ajax + WCF ...你可以帮我吗?如果我在WCF中使用单个数据响应就可以,但是当我尝试从WCF发送列表或大量响应时,它看起来是错误的。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Activation;
using System.ServiceModel.Web;
using System.Text;
namespace longpollingexample
{
[ServiceContract(SessionMode = SessionMode.NotAllowed)]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Single, InstanceContextMode = InstanceContextMode.PerCall)]
public class Service2
{
static List<int> ff = new List<int>();
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json)]
public List<int> hi(int a, int f)
{
ff.Add(a*f);
return ff;
}
}
}
这是WCF服务,我们只有一个功能,并尝试获取列表的答案。列表是静态的。如何从此列表中获取任何元素?我尝试做什么......
function hi2() {
var t = 0;
$.ajax({
async: true,
url: '/Service2.svc/hi',
data: 'a= ' + $('#my1').val() + '&f=' + $('#my2').val(),
type: 'GET',
dataType: 'json',
success: function (data) {
var str='';
str += data[0].d;
$("#msgs").html(aa);
},
error: function () { alert('pop the champagne'); }
});
}
我能获得data[0].d
- 我的ff列表中的第一个元素吗?它不起作用(错误的是什么?谢谢!对不起我的英语,我知道它真的很糟糕(
答案 0 :(得分:0)
就这样做,
success: function (data) {
$.each(data.d, function(i, item) {
alert(item);
});
}