无法再将表导入 edmx。“运行转换:System.NullReferenceException:未将对象引用设置为对象的实例。”

chi*_*ati 3 edmx entity-framework-6 visual-studio-2022

无法再将表导入 edmx。“运行转换:System.NullReferenceException:未将对象引用设置为对象的实例。”

chi*_*ati 18

C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\Templates\Includes
Run Code Online (Sandbox Code Playgroud)

以管理员模式启动记事本,然后打开文件(根据您的版本,将 Community 替换为 Professional 或 Enterprise):

C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\Templates\Includes\EF6.Utility.CS.ttinclude
Run Code Online (Sandbox Code Playgroud)

更新 DynamicTextTransformation 中的以下代码(大约第 1920 行)并更改:

_generationEnvironment = type.GetProperty("GenerationEnvironment", BindingFlags.Instance | BindingFlags.NonPublic);
Run Code Online (Sandbox Code Playgroud)

_generationEnvironment = type.GetProperty("GenerationEnvironment", BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public);
Run Code Online (Sandbox Code Playgroud)