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

.NET 6添加迁移失败:无法加载DefaultInterpolatedStringHandler类型

问题解决方案

一、解决「无法加载类型'System.Runtime.CompilerServices.DefaultInterpolatedStringHandler'」报错

这个错误核心是项目运行环境或目标框架未匹配.NET 6,按以下步骤排查修复:

  • 打开项目文件(.csproj),确认TargetFramework节点设置为<TargetFramework>net6.0</TargetFramework>,避免使用net5.0或更低版本。
  • 检查本地.NET SDK版本:打开命令行执行dotnet --version,确保版本为6.x及以上,若版本过低,下载安装对应版本SDK即可。
  • 清理项目缓存:删除bin、obj文件夹,执行dotnet restore重新恢复依赖,排除旧版本库的干扰。

二、理清Program.cs与Startup类的关系

.NET 6支持两种启动模式,二者可共存,无需强行修改原有结构:

  • 若要保留Startup类,Program.cs应按如下方式调用Startup的配置逻辑,无需把主机创建代码移到Startup中:
var builder = WebApplication.CreateBuilder(args);
var startup = new Startup(builder.Configuration);
// 调用Startup的服务配置方法
startup.ConfigureServices(builder.Services);

var app = builder.Build();
// 调用Startup的管道配置方法
startup.Configure(app, app.Environment);

app.Run();
  • Startup类的ConfigureServices方法本身就是用来配置服务的,保留它完全合理;如果想简化写法,也可以把Startup里的逻辑直接迁移到Program.cs的顶级语句中,移除Startup类。

三、重新执行迁移操作

修复上述问题后,进入项目根目录执行命令重新添加迁移:

dotnet ef migrations add YourMigrationName

若仍有问题,可指定项目和数据上下文:

dotnet ef migrations add YourMigrationName --project YourProjectName --context YourDbContextName

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 16:05:26