【问题标题】:How can I define IQueryable in proto file如何在 proto 文件中定义 IQueryable
【发布时间】:2019-12-10 03:10:48
【问题描述】:

我有

public System.Linq.IQueryable<Models.MyDbModel.ACTION> Get()
{
}

public System.Web.Http.IHttpActionResult Put(int id, 
Models.MyDbModel.ACTION ACTION)
{
}

我需要在我的 proto 文件中定义它

【问题讨论】:

    标签: c# protocol-buffers grpc protobuf-net proto


    【解决方案1】:

    IQueryable[&lt;T&gt;] 是一个非常复杂的 API,它将延迟查询表示为 AST(表达式树)。 当然在 gRPC 的一般情况下是行不通的;它可能可以在非常具体的实现中以仅限 .NET 的方式表达,但它需要有人编写与序列化和反序列化 AST 相关的所有代码,和 AFAIK 迄今为止还没有发生过。所以:今天我会说:不要那样做。以常规 .proto 方式编写查询。如果您希望某个特定库(例如 protobuf-net)考虑实现 AST 版本,那么可以在该库的 repo 上讨论。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-20
      • 2023-03-19
      • 2023-03-11
      • 2020-06-25
      • 1970-01-01
      • 1970-01-01
      • 2020-07-05
      • 1970-01-01
      相关资源
      最近更新 更多