我找到了this interesting question on stackoverflow关于映射视图并在EF Core中使用它的方法。 根据its answer,以前的EF Core版本无法自动映射视图。
但现在呢?根据Entity Framework 2.1 Roadmap,
EF Core模型现在可以包含查询类型。与实体类型不同, 查询类型没有在其上定义的键,也无法插入, 删除或更新(即它们是只读的),但可以返回它们 直接通过查询。查询类型的一些使用方案是:
- 映射到没有主键的视图
- (...)
所以问题是:是否可以自动构建数据库上下文并映射其视图(就像我们对现有数据库的a normal scaffold-dbcontext所做的那样)?如果有,有谁知道怎么做?
或者唯一的方法仍然是creating them manually,因为Sampath Kaliyamurthy在之前的EF Core版本的答案中说过?
我找到了一个解决方法,其中包括:
select * into table from view
查询从该视图创建一个表,并将其命名为视图初始名称(例如,该表将命名为“MyView”)HasKey
属性这将使视图像普通的脚手架表一样,您将获得所有正确的映射和一切。 唯一的区别当然是您无法在其中插入数据或进行编辑。 但是没关系,因为如果你想使用视图,你从一开始就知道这一点!
但
所以任何帮助和/或答案都会像欣赏一样!