我正在尝试创建一个Visual Studio C#模板,其中包含多个引用彼此的项目,问题是创建模板项目后,即使引用存在,也无法从其他项目中找到名称空间在References下拉列表中,如果我构建解决方案,则显示此错误:
未为项目' CT_NombreProyecto1.Services.csproj'设置OutputPath属性。请检查以确保您为此项目指定了Configuration和Platform的有效组合。配置='调试'平台=' BPC&#39 ;.如果某个其他项目正在尝试遵循项目到项目对此项目的引用,此项目已卸载或未包含在解决方案中,并且引用项目不使用相同或等效项目构建,则也可能出现此错误配置或平台。 CT_NombreProyecto1
以这种方式添加对其他项目的引用:
<ProjectReference Include="..\$ext_safeprojectname$.Models\$ext_safeprojectname$.Models.csproj">
<Project>{E9A103FE-307F-465D-BFD3-8E9D1C37F777}</Project>
<Name>$ext_safeprojectname$.Models</Name>
</ProjectReference>
其中$ ext_safeprojectname $是使用Project标签上的CopyParameters从root vstemplate文件继承的标记。
我猜错误正在发生,因为它试图在同一个解决方案中为另一个项目找到并组装DLL,但是如果解决方案无法构建它应该如何解决?
任何想法?,谢谢
答案 0 :(得分:0)
我找到了解决方案,OutputPath错误的原因是一个名为Platform的Windows环境变量,创建vstemplates有两种解决方法:
在模板上的每个项目中创建一个条件,如此
平台条件=&#34; &#39; $(平台)&#39; ==&#39;&#39;或者&#39; $(平台)&#39; ==&#39; BPC&#39; &#34;&GT; AnyCPU
Visual Studio使用空白选项
创建该条件标记