You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 7项目创建Razor Page时遇Microsoft.EntityFrameworkCore加载错误

解决EF Core版本不匹配导致的程序集加载错误

问题原因

项目中EF Core相关包版本为7.0.1,但Microsoft.VisualStudio.Web.CodeGeneration.Design(版本7.0.11)依赖的EF Core版本是7.0.12,运行时尝试加载更高版本的程序集,导致出现Could not load file or assembly 'Microsoft.EntityFrameworkCore, Version=7.0.12.0'错误。

解决方案

方案一:统一EF Core包版本到7.0.12

将所有EF Core相关包的版本更新为7.0.12,与代码生成工具依赖的版本匹配。修改后的项目文件如下:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>net7.0</TargetFramework>
    <Nullable>enable</Nullable>
    <ImplicitUsings>enable</ImplicitUsings>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="7.0.12" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.12">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="7.0.12" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.12" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.12">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="7.0.11" />
  </ItemGroup>

</Project>

方案二:降级代码生成工具版本(不推荐)

若不想升级EF Core版本,可将Microsoft.VisualStudio.Web.CodeGeneration.Design降级到与7.0.1匹配的版本(如7.0.1),但此版本可能缺少部分功能或修复,因此优先推荐方案一。

后续操作

  1. 保存修改后的项目文件
  2. 右键项目,选择还原NuGet包
  3. 执行清理解决方案(菜单:生成 -> 清理解决方案)
  4. 执行重新生成解决方案(菜单:生成 -> 重新生成解决方案)
  5. 再次尝试创建Razor Page

内容的提问来源于stack exchange,提问作者shan98

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 09:00:31