AjaxControlToolkit资源文件未复制到MSBuild脚本中的输出

时间:2009-06-18 08:03:07

标签: visual-studio-2008 msbuild ajaxcontroltoolkit web-applications resource-files

我是MSBuild的新手,但我设法设置了以下简单脚本:

<Project ToolsVersion="3.5" DefaultTargets="Compile" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        <Configuration Condition="'$(Configuration)' == ''">Debug</Configuration>
    </PropertyGroup>
    <ItemGroup>
        <SolutionRoot Include=".." />
        <BuildArtifacts Include=".\Artifacts\" />
        <SolutionFile Include="..\SolutionName.sln" />
    </ItemGroup>
    <Target Name="Clean">
        <RemoveDir Directories="@(BuildArtifacts)" />
    </Target>
    <Target Name="Init" DependsOnTargets="Clean">
        <MakeDir Directories="@(BuildArtifacts)" />
    </Target>
    <Target Name="Compile" DependsOnTargets="Init">
        <MSBuild Projects="@(SolutionFile)" Properties="OutDir=%(BuildArtifacts.FullPath);Configuration=$(Configuration)" />
        <MakeDir Directories="%(BuildArtifacts.FullPath)\_PublishedWebsites\RDE.XAP.UnifiedGui.Web\Temp" />
    </Target>
</Project>

该解决方案有23个项目,其中4个是WebApps。现在,脚本工作正常,输出正确生成。我反击的唯一问题是使用AJAX Control Toolkit的解决方案中的两个WebApp项目。该工具包包含一组包含本地化资源的文件夹(例如 ar it es fr )。在MSBuild中构建解决方案时,这些文件夹不会复制到WebApps的 bin 目录中,但在Visual Studio中构建时会复制它们。

如何以干净的方式解决这个问题?我知道我可以写一个(非常复杂的)任务,在编译后复制目录,但它似乎不适合我。此外,Google,SO和MSDN都无法提供有关此类问题的更多详细信息。

1 个答案:

答案 0 :(得分:0)

确保bin目录中的ajaxcontroltoolkit.dll已添加到源控件存储库中。 (即SVN,GIT,CNV等)