首页 新闻 会员 周边 捐助

EFCore 的 Scaffold-DbContext无法用在SQL2005数据库上,有没有办法解决?

0
悬赏园豆:10 [已解决问题] 解决于 2017-11-16 21:51

在Nuget控制台使用Scaffold-DbContext命令生成数据库的DbContext时,连接字符串使用了SQL2005的数据库,结果生成时出现错误:

列名 'has_filter' 无效。
列名 'filter_definition' 无效。

查阅EntityFrameworkCore的源码时发现生成时访问了系统视图sys.indexes中的以上两个列,但是查看SQL2005数据库发现没有这两个列,SQL2008以上才有。

在不升级数据库的情况下,有什么办法解决这问题?或者说我如果把EntityFrameworkCore的源码下载下来重新编译过,要怎么让它在Nuget控制台生效使用?

< >
分享
最佳答案
0

EF Core 要求最低SQL 2008 的。如果你无法SQL 2008,就只能不要用EF CORE了。

收获园豆:10
爱编程的大叔 | 高人七级 |园豆:30844 | 2017-11-16 18:24
其他回答(2)
0

Entity Framework Core 不支持 SQL Server 2005

dudu | 园豆:29568 (高人七级) | 2017-11-16 16:44
0

自己用t4模板生成解决了这个问题,可是又碰到新的问题,视图没办法自动映射到对应的实体集合中。算了,不用efcore了,还是用回PetaPoco吧。

风不平 | 园豆:118 (初学一级) | 2017-11-16 21:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册