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

升级Windows11后Visual Studio无法创建新Blazor模板项目

解决Windows11升级后Blazor自定义模板创建失败问题

问题原因分析

报错路径TemplateName.zip$safeprojectname$.csproj表明Visual Studio在解析模板时,尝试在模板压缩包中寻找名为$safeprojectname$.csproj的文件,但实际你的模板包中并不存在该文件——这是因为你修改MyTemplate.vstemplate时,将File属性也替换成了变量,而Windows11升级后VS的模板解析逻辑变得更严格,不再允许这种“实际文件与配置路径不匹配”的情况(此前Windows10下VS可能有兼容处理)。

解决步骤

1. 修正vstemplate配置

将MyTemplate.vstemplate中的Project节点改回实际存在的模板文件名,仅保留TargetFileName为变量:

<Project TargetFileName="$safeprojectname$.csproj" File="BZ1Template4.0.csproj" ReplaceParameters="true">

这样VS会将模板中真实存在的BZ1Template4.0.csproj文件复制并重命名为$safeprojectname$.csproj,同时自动替换文件内的参数。

2. 确保模板文件内的参数替换

打开模板中的BZ1Template4.0.csproj文件,将所有硬编码的项目名称、命名空间等内容替换为$safeprojectname$,比如:

<AssemblyName>$safeprojectname$</AssemblyName>
<RootNamespace>$safeprojectname$</RootNamespace>

3. 清理VS模板缓存

删除VS的项目模板缓存文件夹:

C:\Users\ME\AppData\Roaming\Microsoft\VisualStudio\17.0_4cb345df\ProjectTemplateCache

重启Visual Studio,让它重新加载并解析你的自定义模板。

4. 验证模板权限

右键以管理员身份运行Visual Studio,尝试创建项目——Windows11的权限管控更严格,确保VS拥有读写AppData模板目录的权限。

备选方案(若上述步骤无效)

重新导出模板时,先将原Blazor项目的csproj文件名改为safeprojectname.csproj,再导出模板。此时无需修改vstemplate的File属性,VS会直接识别变量并完成命名替换。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 07:53:15