5

EF Core 2.1 具有新功能 -查询类型

查询类型的一些主要使用场景是:

  • 作为即席 FromSql() 查询的返回类型。
  • 映射到数据库视图。
  • 映射到没有定义主键的表。
  • 映射到模型中定义的查询。

我将项目升级到 Core 2.1,但 Scaffold-DbContext 仍然不生成数据库视图。我必须使用特殊参数还是 Scaffold-DbContext 不支持它?

4

2 回答 2

5

这是一个hackish但有效的解决方案:

如何将具有数据库视图的控制器搭建到 EF Core 2.1

  1. 在数据库中创建视图。
  2. 创建一个与视图具有相同结构的 POCO。
  3. 添加一个带有在步骤#2 中创建的 POCO 的新控制器 a。如果发生与键相关的错误,Key请在列上添加属性,然后在脚手架完成后删除。
  4. DbSet<T>应该T在步骤#2 中创建的类的位置添加了一个新属性。更改DbSetDbQuery
  5. OnModelCreating的方法中DbContext,添加以下代码:

    modelBuilder.Query<POCO from step#2>().ToView("Name of the view");
    

资源

于 2018-11-09T18:58:30.853 回答
3

2.1 不支持。请参阅问题#1679

于 2018-07-18T02:10:06.347 回答