我的Web服务中有一个方法,它返回一个DataView,
我已经设置了一个与此服务对话的代理,但是当我在代理中创建此方法时
public DataView GetSales(DateTime SalesDate)
{
ServiceClient client = new ServiceClient();
return client.GetSalesForDay(SalesDate);
}
我收到错误“无法将类型'对象[]'隐式转换为'System.Data.DataView',我试过谷歌搜索但没有得到任何地方,任何帮助将不胜感激。
由于
答案 0 :(得分:2)
你不能这样做 - 你不能也不应该从WCF服务永远返回类似DataView的东西。 WCF服务只返回数据 - 不是具有行为的对象(DataView包含很多行为 - 排序,过滤等)。
相反,在您的服务代码中,请执行以下操作:
您可以使用Linq-to-SQL,NHibernate或任何其他功能强大的ORM来处理从数据库中的行/列到您的对象的转换,而不是自己执行步骤1和步骤2。