微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WebService返回DataTable问题

WebService返回DataTable问题
2007-09-28 0:28

今天做项目时,想在WebService中返回DataTable,在单位没成功,看网上有人说datable在.net1.1中是没有序列化的,不能直接在webservice中返回,可以返回dataset.晚上回家又上网找了一下,看到说法基本一致,还有一篇被引用很多的文章说在asp.net2.0中datatable已经被序列化了,但是还需要自己手动写一些代码才能从webservice中返回.我就想一定要写另写代码吗?继续查找,发现有人说必须给datable起名就可以返回了,还可以在调用端手动转换为datatable类型.又做了一遍,完全通过了,不用强制类型转换了.代码如下:

webservice文件

[WebMethod]
public DataTable dt()
{
DataTable dt = new DataTable("default");
dt.Columns.Add("id");
dt.Columns.Add("name");
for (int i = 0; i < 10; i++)
{
DaTarow dr = dt.NewRow();
dr["id"] = i.ToString();
dr["name"] = "name" + i.ToString();
dt.Rows.Add(dr);
}
return dt;
}

调用页面

WebService1.WebService1 service = new WebService1.WebService1();
DataTable dt = service.dt();
gvUser.DataSource = dt;
gvUser.DataBind();

最关键的是在webservice的方法中为datatable命名,否则就会报错.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐