我有一个带有服务操作的实例WCF数据服务。
[WebGet]
public IQueryable<long> TestMethod() {
long[] instanceNumberArray = new long[] { 1 };
return instanceNumberArray.AsQueryable();
}
我尝试用这种方式调用它:
Uri EndPointAddressUri = new Uri(@"http://localhost:9227/ReviewServiceWDS.svc/");
DataServiceContext context = new DataServiceContext(EndPointAddressUri);
DataServiceQuery<long> query = context.CreateQuery<long>("TestMethod");
var result = query.Execute();
var value = result.FirstOrDefault();
在最后一行,我抓住了例外:
处理响应流时出错。 XML元素包含混合内容。
同时Internet Explorer返回:
<TestMethod>
<element p2:type="Edm.Int64">1</element>
</TestMethod>
如何解决此问题?
答案 0 :(得分:0)
DataServiceContext.CreateQuery仅将EntitySetName作为参数。您需要使用DataServiceContext.Execute来调用服务操作。