EF从数据库生成模型,视图生成失败问题及解决方案

1、由于视图是一张虚拟表,没有定义主键,但在EF进入导入的时候需要实体有主键。这就产生了不一致现象。EF有能力能够从视图相关的表的非空字段推断其为视图主键。但如果遇到视图中相关的表字段都是可空的情况怎么办呢?

解决方案: a)使用row_number函数生成一列。

      b)对表字段使用isnull函数指定默认值,则EF也认为其为视图主键的一部分。与此对应于的是如果不想将一个非空字段转换为视图实体主键,则可以使用nullif函数。

具体可参见:http://stackoverflow.com/questions/1013333/entity-framework-and-sql-server-view

本文出自 “ForMeForYou” 博客,请务必保留此出处http://tancfeng.blog.51cto.com/4079342/1718151

EF从数据库生成模型,视图生成失败问题及解决方案

标签:entityframework   view   database-first   

原文地址:http://tancfeng.blog.51cto.com/4079342/1718151

posted @ 2020-08-12 17:05  存在丶  阅读(474)  评论(0编辑  收藏  举报