使用EF6(DB First模式)无法生成对应模型实体类

在升级到VisualStudio2022后,用户发现无法用EF6生成DBFirst模式的实体类。文章提供了两种解决方案:一是回滚到VS2022的15.x版本,二是修改EF6的.CS.ttinclude文件,特别是找到DynamicTextTransformation并替换特定代码行以修复生成错误。用户需要注意在替换文件时去掉.EF6.Utility.CS.ttinclude.tt的后缀。
摘要由CSDN通过智能技术生成

最近升级了,Visual Stidio 2022,在使用EF6时(DB First模式),无法生成对应模型的实体类,如下:

 对于该问题,我去微软社区,找到了两个解决方案:

1.从Visual Studio2022 16.x版本回滚到Visual Studio2022 15.x版本即可解决问题;

2.修改EF6的实用程序.CS.ttinclude,它默认的位置在:C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\Templates\Include\EF6.Utility.CS.ttinclude,该位置根据你Vs的安装位置决定的,找到它右击使用文本文档打开,然后Ctrl+F搜索:DynamicTextTransformation

把红色圈中的代码修改为以下代码:

 _generationEnvironment = type.GetProperty("GenerationEnvironment"); 

 然后替换源文件,即可解决报错问题!

注:

 

记得,EF6.Utility.CS.ttinclude.tt,需要去掉.tt后缀,然后在替换.

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值