webservice返回datatable时报序列化错误
以下三种方案的实质应该都是序列化的,有一位大神说过“跨进程的不序列化应该去面壁!”O(∩_∩)O哈哈哈~
解决方案一:返回dataset
WebService中的方法代码如下:
[WebMethod]
public DataSet GetDataSet()
{
DataTable dt=new DataTable("mytable");
DataColumn dc=new DataColumn("id",typeof(string));
dt.Columns.Add(dc);
DataRow dr=dt.NewRow();
dr["id"]="1111111";
dt.Rows.Add(dr);
DataSet ds=new DataSet();
ds.Tables.Add(dt);
return ds;
}
在调用客户端直接使用DataSet
DataSet ds = db.GetDataSet();//db是服务代理类实例
GridView1.DataSource = ds.Tables[0];
GridView1.DataBind();
解决方案二:给返回的datatable命名
webse