我称之为启用ajax的wcf服务方法,
<script type="text/javascript">
function GetEmployee() {
Service.GetEmployeeData('1','5',onGetDataSuccess);
}
function onGetDataSuccess(result) {
Iteratejsondata(result)
}
</script>
我的方法是,
[OperationContract]
public string GetEmployeeData(int currentPage,int pageSize)
{
DataSet ds = GetEmployeeViewData(currentPage,pageSize);
return GetJSONString(ds.Tables[0]);
}
我的Dataset ds
包含三个数据表,但我正在使用第一个用于我的记录...
其他两个数据表有值,如何在result
...
function onGetDataSuccess(result) {
Iteratejsondata(result)
}
任何建议......
答案 0 :(得分:2)
唯一的建议是:不要在WCF上使用DataSet!
DataSet是邪恶的 - 它们是巨大的,它们带来了大量的开销,混合数据与行为 - 在做适当的SOA时你应该尽量避免瘟疫。当您异步进行Ajax调用时,这是双重的 - 您希望使用JSON尽可能少地传输数据 - 并且使用DataTables的DataSet对您的JSON调用没有任何帮助......
所以真的:让自己熟悉一些ORM,抓住对象和对象列表,然后把DataSet放到数字回收堆上......
对于一个小项目,如果您使用SQL Server作为后端,为什么不使用Linq-to-SQL?或者,如果这对您不起作用,请查看Subsonic