如何确认Web应用程序运行在.NET 10环境?
确认.NET应用运行在.NET 10环境的方法及相关问题解答
一、多场景确认应用运行环境
本地开发阶段
- 命令行快速验证
- 在项目根目录执行
dotnet --version,可查看当前终端默认使用的.NET SDK版本。 - 启动应用后(
dotnet run),控制台日志里会明确打印运行时版本,比如在Hosting.Lifetime的启动日志中会显示类似.NET 10.0.x的信息。
- 在项目根目录执行
- 项目配置文件检查
打开项目的.csproj文件,确认<TargetFramework>节点已改为<TargetFramework>net10.0</TargetFramework>——这是编译时的核心配置,决定了项目基于哪个框架版本构建。 - IDE内查看
- Visual Studio:右键项目 → 属性 → 应用程序标签页,查看“目标框架”是否为
.NET 10;启动应用时,输出窗口也会同步显示运行时版本。 - Rider:右键项目 → 结构 → 项目设置 → 目标框架,确认选中
.NET 10。
- Visual Studio:右键项目 → 属性 → 应用程序标签页,查看“目标框架”是否为
- 代码内输出版本
在Program.cs中添加一行代码,直接在运行时输出版本信息:
启动应用后就能看到精准的版本号。Console.WriteLine($"当前运行时版本: {System.Runtime.InteropServices.RuntimeInformation.FrameworkDescription}");
Azure部署后验证
- Azure门户查看
进入应用服务的「配置」→「通用设置」,检查“.NET版本”是否设置为.NET 10;另外在「日志流」中,应用启动日志会包含运行时版本详情。 - Kudu工具检查
进入应用服务的「高级工具」启动Kudu,打开控制台执行dotnet --version查看服务器端SDK版本;也可以查看D:\home\site\wwwroot下的.runtimeconfig.json文件,其中runtimeOptions.framework.version字段会明确标注.NET版本。
二、是否需要执行Rebuild All?
必须执行Rebuild All,原因如下:
- 切换目标框架后,旧的编译产物(bin/obj目录下的文件)是基于.NET 8生成的,直接部署会引发运行时兼容性错误。
- Rebuild会清理旧产物,基于.NET 10 SDK重新编译整个解决方案,确保所有项目的输出都适配新框架。
- 建议先执行
dotnet clean手动清理残留文件,再执行Rebuild,避免旧文件干扰编译结果。
内容的提问来源于stack exchange,提问作者Scott
相关产品推荐
相关产品推荐

