use*_*587 3 c# wcf-rest odata wcf-web-api
我创建了一个OData服务,现在我正在尝试在客户端使用此服务.我想在c#查询表达式中为下面的url创建一个表达式 -
http://odata.org/Product-Service/Product(150)
上面的url在浏览器中工作正常,但我想在C#中为上面的url创建查询表达式.任何帮助都会非常明显.
您可以使用DataServiceContext+ DataServiceQueryin System.Data.Services.Client来点击Url.请记住,在由于延迟加载而调用First()之前,不会执行任何查询.
var context = new DataServiceContext(new Uri("http://odata.org/Product-Service"), DataServiceProtocolVersion.V3);
var query = context.CreateQuery<Product>("Product");
Product product = query.Where(p => p.Id == 150).First();
Run Code Online (Sandbox Code Playgroud)
以上内容应解析为http://odata.org/Product-Service/Product(150),您可以通过查看该query.Entities集合来查看.集合中的每个实体都包含一个Uri.
此外,如果您的Product类包含导航属性,则需要添加展开查询选项:
var query = context.CreateQuery<Product>("Product").
AddQueryOption("$expand", "NavigationProperty");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6605 次 |
| 最近记录: |