12

我正在开发一个 Visual Studio 模板,其中生成的项目依赖于许多引用,这些引用恰好是源代码控制下的其他项目。

问题是如何在我的 ProjectGroup 模板中进行设置?例如,如果我在“C:\Stuff\MyUtilityProject\Utility.csproj”中有一个已经存在的项目,并且我想将一个文件 (Tools.cs) 添加到我的模板中,我将如何处理?

这是我的 vstempalte 的样子。仅供参考 - 我对 ProjectTemplateLink 或解决方案文件夹的创建没有任何问题,只需将预先存在的 Utility.csproj 添加到我的新解决方案中:

提前致谢!

<VSTemplate Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="ProjectGroup">
  <TemplateData>
    <Name>MySampleSolution</Name>
    <Description>My Test Project</Description>
    <ProjectType>CSharp</ProjectType>
    <Icon>__TemplateIcon.ico</Icon>
  </TemplateData>
  <TemplateContent>
        <ProjectCollection>
            <SolutionFolder Name="Content">
                <Project File="C:\Stuff\MyUtilityProject\Utility.csproj">
                    <ProjectItem>Tools.cs</ProjectItem>
                </Project>
            </SolutionFolder>
        <ProjectTemplateLink ProjectName="MyWorkingTemplate">
            MyWorkingTemplate\MyTemplate.vstemplate
        </ProjectTemplateLink>
        </ProjectCollection>
  </TemplateContent>
</VSTemplate>
4

3 回答 3

1

您可以托管自己的 NuGet源(或使用TeamCityNuGet 功能或私有MyGet 源。然后您只需将实用程序项目打包为 NuGet 包并将其添加到项目模板中,如下所述:http:// docs.nuget.org/docs/reference/packages-in-visual-studio-templates

于 2012-12-28T15:02:30.133 回答
1

我在Visual Studio 2010 (Ultimate)中知道的唯一解决方法是从模板创建项目/解决方案,添加所需的*.cs文件,然后使用模板导出向导再次导出解决方案。

对于您拥有的库,您可以创建项目模板而不是项目/解决方案模板 - 这允许使用添加 - > Visual Studio 解决方案资源管理器的上下文菜单中的新项目来添加它。

要创建项目模板,请打开您的解决方案,然后使用File -> Export template...并在向导对话框打开后选择项目模板作为导出类型。

确保您在向导上选中了“导入”复选框,否则在您创建后不会自动安装它。

于 2012-07-10T13:47:37.307 回答
0

这是你想要的:

Visual Studio - 以编程方式配置源代码管理解决方案

编辑:

我一直在环顾四周,看到了这个相当有趣的项目,它似乎是导出解决方案而不是可能是或可能不是更好主意的项目。我特别喜欢最后的部分,它说它将去掉源代码控制,这样你就可以得到一个干净的项目。我知道这不是您想要的确切答案,但值得一看;)

http://flux88.com/blog/exporting-visual-studio-solutions-with-solutionfactory/

于 2010-01-07T21:51:39.783 回答