如何向Visual Studio 2013 C#项目添加自定义构建参数?

时间:2014-10-07 13:05:47

标签: c# visual-studio visual-studio-2013 msbuild

我想将custom build parameters添加到我的C#.NET项目中,但不幸的是我只能在项目中设置有限的设置 - >属性 - >构建菜单。有没有选项如何为我的项目设置自定义参数?即使手动编辑csproj文件也没问题。

我尝试过搜索,但发现的唯一结果是C / C ++项目,可以在Visual Studio中彻底配置,或者我应该只使用自定义的msbuild构建脚本。

由于

1 个答案:

答案 0 :(得分:2)

我已经完成了覆盖C#目标" CoreCompile"将LinkResources传递给Csc任务。我把它拉到我自己的.targets文件中并包含在Microsoft.CSharp.targets之后,以便相同的命名目标覆盖标准目标。

在项目文件中,我创建了包含我需要的文件的LinkResource项目组。

<Target
    Name="CoreCompile"
    Inputs="$(MSBuildAllProjects);
            @(Compile);                               
            @(_CoreCompileResourceInputs);
            $(ApplicationIcon);
            $(AssemblyOriginatorKeyFile);
            @(ReferencePath);
            @(CompiledLicenseFile);
            @(EmbeddedDocumentation); 
            $(Win32Resource);
            $(Win32Manifest);
            @(CustomAdditionalCompileInputs);
            @(LinkResource)"
    ...>
    ...

    <Csc  Condition=" '%(_CoreCompileResourceInputs.WithCulture)' != 'true' "
          LinkResources="@(LinkResource)"
          ...
    />
    ...
</Target>

如果Csc任务支持您需要的参数,您可以这样做。如果没有,您可以尝试覆盖Csc任务。