まず、ASP.NET WebApiチュートリアルを使用して、基本的なApiController that exposes an Entity Framework model through ODataを作成しました。このサービスは、OData $フィルタクエリのjsonを返すように動作します。
私は複数値プロパティのODataの$filter queries that include "any" or "all" queryiesを実行すると、それはODataException
をスローここに私は私のApiControllerはこのようになります
~/api/Blogs?$filter=any(Tags,Name+eq+'csharp')
を使用しようとしているのODataクエリです:
はpublic class BlogController : ApiController
{
public BlogsController()
{
this.Entities = new BlogEntities();
}
public ContactEntities Entities { get; set; }
[Queryable(PageSize = 25, AllowedQueryOptions = AllowedQueryOptions.All)]
public IQueryable<Blog> Get()
{
return this.Entities.Blogs;
}
}
ブログエンティティはこの契約を結んでいます
public Blog {
public Guid ID { get; set; }
public string Title { get; set; }
public Tag Tags { get; set; }
}
public Tag {
public Guid ID { get; set; }
public string Name { get; set; }
}
例外は、あなたが見ることができるように、私は私のコードでは普通の何もないし、すべてが正常に動作する必要があります。
ODataException: Type 'Blog' does not have a property 'Name'
を投げMicrosoft ASP.NET Web API ODataでは、「any」クエリと「all」クエリはまだサポートされていない可能性がありますか?
" $ inlinecount 'odataオプションは無視されます。 –