2014-07-10 41 views
1

我很难连接到数据库中的现有视图。 我创建了模型,现在我试图将DbSet添加到我现有的上下文中,以便我可以查询它。ASP.NET MVC - 数据库视图为DbSet?

我试过以下,但每次创建新的EF迁移时,都会尝试将该对象作为数据库中的表创建。

public DbSet<SurveyResponse> SurveyResponses { get; set; } 

我尝试了相同的声明为一个IQueryable这似乎停止表的创建,但是当我试图访问context.SurveyResponses,SurveyResponses被显示任何数据。

任何想法?

+1

您是否尝试过添加迁移名称--ignorechanges它应该停止EF试图创建表 – heymega

+0

@heymega - 工作,谢谢! 我想知道是否有办法强制EF将此视为视图,但我不必忽略这些更改? – Tom

回答

1

要停止EF创建表,您可以在添加迁移时指定忽略更改标志。

add-migration name -ignorechanges 

实体框架将视图映射视为与表映射相同。

只记得不要更新视图实体,否则你会得到一个错误!