我可以将SqlDataSource与asmx Web服务一起使用吗?

时间:2011-07-25 17:15:04

标签: c# asp.net web-controls

基本上我有一个从Web服务返回DataSet时加载的gridview,但是这样做会让我失去gridview的一些好处,比如排序,更新,删除,行等的简单性

有没有办法可以使用Web服务,但仍然可以使用绑定到GridView的SqlDataSource。 我不能像SqlDataSource那样返回一个webcontrol,但也许还有办法吗?

2 个答案:

答案 0 :(得分:1)

在内部,客户端或服务器上没有无缝的Web服务绑定。 SQLDataSource旨在直接与数据库通信并忽略外部组件。如果切换到ObjectDataSource,则调用的方法可以引用一个组件,然后该组件与Web服务进行通信,但仅在服务器上进行通信。

您是否希望在客户端上执行此操作?这两种控件都不支持客户端绑定,但您可以自己构建UI,或使用JS等效控件进行绑定,例如ASP.NET AJAX 4.0模板或dataview component

HTH。

答案 1 :(得分:1)

首先,我建议您从ASP.NET Web服务转移到WCF服务 - 您可以使用WCF Data Services。例如。您应该注意这不完全是SqlDataSource

但是如果你想使用ASP.NET网络服务,我认为这篇文章会对你有所帮助: How To Use a Web Service as a Data Source for a Client Application in Visual C# .NET

重点是您可以设置方法来返回DataSet

[WebMethod]
public DataSet GetCustOrders(string IDMask)
{
    // your code here
}

但网络服务是旧技术,你不应该使用它们。