【问题标题】:How to expose data from database to be queryable?如何将数据库中的数据公开为可查询?
【发布时间】:2017-10-31 17:49:47
【问题描述】:

我需要围绕几个数据库表设计一个包装器,允许客户端简单地执行一个GET

http://myservice/accounts?$filter=name eq alex

然后此服务将对该数据库表应用该查询,例如:

create table account (name varchar, key int)

我们将有一些控制器来获取该查询字符串并将其应用于数据集,以伪代码形式:

public class AccountsController
{
   public HttpResponseMessage Get()
   {
        return _dataSource.Get(Request.ODataQueryString);
    }
}

我们如何公开一个 sql server 表以便通过 odata 轻松查询?

【问题讨论】:

    标签: c# sql-server asp.net-mvc asp.net-web-api2


    【解决方案1】:

    假设您使用的是 EntityFramework,您只需将控制器注册为 OData 端点,使用 OData [EnableQuery] 属性对其进行装饰,并通过控制器方法返回您要定位的类的实例:

    https://docs.microsoft.com/en-us/aspnet/web-api/overview/odata-support-in-aspnet-web-api/odata-v4/create-an-odata-v4-endpoint

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-02
      • 1970-01-01
      • 2021-10-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多