我有一个具有程序集属性的 vsixmanifest 文件。该文件如下所示:
<Content>
<ProjectTemplate>Solution</ProjectTemplate>
<Assembly AssemblyName="SolutionNameWizard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1c39bfcc-223f-4c12-a5dc-55eeca7c61f7">
Assemblies\SolutionNameWizard.dll
</Assembly>
我知道程序集名称和公钥是正确的。
现在,我正在尝试在我的一个模板中使用这个程序集。现在我有:
<WizardExtension>
<Assembly>SolutionNameWizard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1c39bfcc-223f-4c12-a5dc-55eeca7c61f7</Assembly>
<FullClassName>SolutionNameWizard.IWizardImplementation</FullClassName>
</WizardExtension>
有什么我想念的吗?当我运行 vsix 时,出现以下错误:
A problem was encountered creating the sub project 'test.Web' Error: this template
attemtped to load component assembly 'SolutionNameWizard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1c39bfcc-223f-4c12-a5dc-55eeca7c61f7'.
我知道模板要求程序集在 GAC 中,当我使用 vsix 时也是这种情况吗?我希望避开 GAC 并仍然使用我的向导。
编辑:我按照答案中的建议将公钥更改为正确的字符串,但仍然存在问题。
编辑2:除了下面的有用答案之外,这是我完成此过程后写的博客。它链接到我发现非常有用的一堆文章:https ://thebhwgroup.com/blog/2013/10/visual-studio-templates