0

我有一个带有服务操作的实例 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>

我该如何解决这个问题?

4

1 回答 1

0

DataServiceContext.CreateQuery 仅以 EntitySetName 作为参数。您需要使用 DataServiceContext.Execute 来调用服务操作。

于 2013-04-03T16:50:33.277 回答