ASP.NET XML WebService中的WebMethod给我们编程带来极大的方便,比如返回DateTime,可以直接在本地代码中认出来。但是对于常用的DataTable类型缺需要手工转换,其转换方法在网上有人提出过解决方案,稍微复杂一些。
不过返回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();
(完)