Visual studio 2013 如何使用SideWaffle在VSTO csproj中包含缺少的ProjectExtensions

Visual studio 2013 如何使用SideWaffle在VSTO csproj中包含缺少的ProjectExtensions,visual-studio-2013,vsix,sidewaffle,Visual Studio 2013,Vsix,Sidewaffle,继“”之后,我发现从已安装的VSIX创建的新项目在选择“项目属性”中的“发布”选项卡时会崩溃Visual Studio。从原始项目模板和新生成的项目中对项目文件进行区分时,ProjectExtensions节点似乎无法进入新文件 以下是原始项目文件片段: <Project> <!-- Include the build rules for a C# project. --> <Import Project="$(MSBuildToolsPath)\Microso

继“”之后,我发现从已安装的VSIX创建的新项目在选择“项目属性”中的“发布”选项卡时会崩溃Visual Studio。从原始项目模板和新生成的项目中对项目文件进行区分时,
ProjectExtensions
节点似乎无法进入新文件

以下是原始项目文件片段:

<Project>
<!-- Include the build rules for a C# project. -->
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
  <!-- Include additional build rules for an Office application add-in. -->
  <Import Project="$(VSToolsPath)\OfficeTools\Microsoft.VisualStudio.Tools.Office.targets" Condition="'$(VSToolsPath)' != ''" />
  <!-- This section defines VSTO properties that describe the host-changeable project properties. -->
  <ProjectExtensions>
    <VisualStudio>
      <FlavorProperties GUID="{BAA0C2D2-18E2-41B9-852F-F413020CAA33}">
        <ProjectProperties HostName="Visio" HostPackage="{29A7B9D7-A7F1-4328-8EF0-6B2D1A56B2C1}" OfficeVersion="15.0" VstxVersion="4.0" ApplicationType="Visio" Language="cs" TemplatesPath="" DebugInfoExeName="#Software\Microsoft\Office\15.0\Visio\InstallRoot\Path#visio.exe" AddItemTemplatesGuid="{51063C3A-E220-4D12-8922-BDA915ACD783}" />
        <Host Name="Visio" GeneratedCodeNamespace="VisioVstoTemplate" IconIndex="0">
          <HostItem Name="ThisAddIn" Code="ThisAddIn.cs" CanonicalName="AddIn" CanActivate="false" IconIndex="1" Blueprint="ThisAddIn.Designer.xml" GeneratedCode="ThisAddIn.Designer.cs" />
        </Host>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>
</Project>

…下面是新项目文件中的相同片段:

<Project>
 <!-- Include the build rules for a C# project. -->
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
  <!-- Include additional build rules for an Office application add-in. -->
  <Import Project="$(VSToolsPath)\OfficeTools\Microsoft.VisualStudio.Tools.Office.targets" Condition="'$(VSToolsPath)' != ''" />
  <!-- This section defines VSTO properties that describe the host-changeable project properties. -->
</Project>


是否有一种好方法可以阻止此项被排除?

安装TemplateBuilder时,会在“属性”下将.props文件添加到项目中。默认情况下,在生成项目模板时,将删除ProjectExtensions。要禁用该选项,请将以下属性添加到.props文件中

<ls-enable-remove-proj-extensions>false</ls-enable-remove-proj-extensions>
false

Great,这非常有效(当设置为false时-这是打字错误吗?),并且GeneratedCodeNamespace属性也被正确替换。出于兴趣,默认删除ProjectExtensions的理由是什么?再次感谢。@JohnGoldsmith web项目(以及我认为的其他项目类型)存储的值是临时的,并且特定于该项目(即IIS Express端口)。因此,当项目在VS中打开时,它们应该被重新创建。如果您能在其中添加一条注释,我将不胜感激。@JohnGoldsmith感谢wiki的贡献,我非常感谢。SideWaffle是真正的社区努力:)