如何在db first实体框架中使用视图

时间:2019-06-14 13:59:10

标签: .net entity-framework entity-framework-core

我有一个问题,我不能在2天之内解决它。 顺便说一下,我正在使用.NET Core 2.2,这就是为什么我使用Entity Framework Core的原因。

我的数据库中有一个视图,我不知道如何从代码端获取视图。 因为我的观点包括这些;

p <- dygraph(your_data)

for (i in 1:nrow(dataframe)) {
  p <- p %>% dyShading(from = dataframe$start[i], to = dataframe$end[i])
}

print(p)

有人建议我这些

CREATE VIEW table_column as
SELECT db.database_id,db.name,col.TABLE_NAME,col.COLUMN_NAME from sys.databases as db
INNER JOIN INFORMATION_SCHEMA.COLUMNS as col ON db.name = col.TABLE_CATALOG

还有这个

var rawSQL = dbContext.Database.SqlQuery<SomeModel>("Raw SQL Query").ToList();

但是他们没有工作。作为最后一个,我尝试过这个;

how to use views in code first entity framework

但是再次没有用,因为这是针对代码优先项目的。

结果是我该怎么办。我要疯了。

1 个答案:

答案 0 :(得分:0)

史蒂夫·格林(Steve Greene)提供的答案是正确的。

此外,为了在EF Core中使用视图,您需要完成以下几点:

  1. 创建实体以表示视图结果
  2. 创建DbContext类
  3. 设置实体和视图之间的映射(Fluent API的数据注释)

假设您已经设置了这些点,将执行以下查询:

var list = await dbContext.TableColumns.ToListAsync();

让我知道此回复是否有用。