我正试图为VS2019创建一个由多个项目组成的自定义模板(基于本指南(,但我在引用方面遇到了问题。
我的解决方案基于经典的三层架构(data/business/ui(,所以当我创建一个新的解决方案时,称之为"MySolution",我会得到"MySolution.data"、"MySolution.business"one_answers"MySolution.ui",这些都很好。我需要业务层有对数据层的引用——然而,使用$ext_safeprojectname$
变量只会在依赖项的项目节点中给我一个未解析的引用,即"$ext_safeprojectname$.data">
其他变量似乎工作得很好——例如,如果我使用$safeprojectname$
,我在引用中得到"MySolution.Business.Data"——对于业务层项目,对变量进行了正确的解析,但没有得到所需的结果。
ext_
前缀是否已被替换?我似乎在任何地方都找不到这方面的任何文档。
谢谢!
我在评论了你的问题后就解决了。我在.vstemplate
文件中缺少ProjectTemplateLink
元素的CopyParameters=true
属性。这是关于从现有解决方案创建多项目模板的提示。一旦我这样做,我的ext_
变量就被替换了。您的ProjectTemplateLink
元素应该如下所示:
<ProjectTemplateLink ProjectName="MyProject" CopyParameters="true">...</ProjectTemplateLink>