Visual Studio 17.8中Blazor Server模板无.NET 8.0选项求助
检查Visual Studio工作负载
打开Visual Studio安装器,点“修改”,确认已勾选**.NET Web和云开发**下的「ASP.NET和Web开发」组件,同时在“单个组件”里确认“.NET 8.0 SDK”已勾选。部分情况下工作负载的依赖组件未完全安装会导致模板缺失。手动更新Blazor模板
以管理员身份打开命令提示符,执行以下命令重置模板:dotnet new uninstall dotnet new install Microsoft.AspNetCore.Blazor.Templates::8.0.0这会清理旧模板并重新安装.NET 8版本的Blazor模板包,确保模板库同步到最新版本。
清空VS模板缓存
关闭所有Visual Studio窗口,删除以下路径的缓存文件夹:%USERPROFILE%\AppData\Roaming\Microsoft\VisualStudio\<你的VS版本号>\ItemTemplatesCache%USERPROFILE%\AppData\Roaming\Microsoft\VisualStudio\<你的VS版本号>\ProjectTemplatesCache
重启VS后模板会自动重新加载。检查框架筛选器
创建项目时,在“创建新项目”界面的「框架」下拉菜单里,确认没有误选旧版本框架(比如.NET 7.0),筛选条件错误会导致.NET 8.0选项被隐藏。曲线救国:从Blazor Web App转换
既然Blazor Web App有.NET 8.0选项,可以先创建该项目并选择「交互式服务器」模式。如果需要纯Blazor Server结构,手动调整项目文件:保留<Project Sdk="Microsoft.NET.Sdk.Web">,移除WebAssembly相关的依赖和配置,只保留Server端的服务注册与中间件设置即可。
内容的提问来源于stack exchange,提问作者Keith Tobin

