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

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

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

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