如何公开数据库中的数据以供查询?
How to expose data from database to be queryable?
我需要围绕几个数据库 table 设计一个包装器,允许客户端简单地执行 GET:
http://myservice/accounts?$filter=name eq alex
然后此服务将针对数据库 table 应用该查询,例如:
create table account (name varchar, key int)
我们会有一些控制器可以获取该查询字符串并将其应用于数据集,使用伪代码:
public class AccountsController
{
public HttpResponseMessage Get()
{
return _dataSource.Get(Request.ODataQueryString);
}
}
我们如何公开 sql 服务器 table 以便通过 odata 轻松查询?
假设您正在使用 EntityFramework,您只需要将您的控制器注册为 OData 端点,用 OData [EnableQuery]
属性和 return 的实例装饰它您通过控制器方法定位的 class:
我需要围绕几个数据库 table 设计一个包装器,允许客户端简单地执行 GET:
http://myservice/accounts?$filter=name eq alex
然后此服务将针对数据库 table 应用该查询,例如:
create table account (name varchar, key int)
我们会有一些控制器可以获取该查询字符串并将其应用于数据集,使用伪代码:
public class AccountsController
{
public HttpResponseMessage Get()
{
return _dataSource.Get(Request.ODataQueryString);
}
}
我们如何公开 sql 服务器 table 以便通过 odata 轻松查询?
假设您正在使用 EntityFramework,您只需要将您的控制器注册为 OData 端点,用 OData [EnableQuery]
属性和 return 的实例装饰它您通过控制器方法定位的 class: