@@ -416,6 +416,8 @@ private static void AddTasksToCopyAllDependenciesIntoBinDir(
416416 string conditionDescribingValidConfigurations )
417417 {
418418 string copyLocalFilesItemName = referenceItemName + "_CopyLocalFiles" ;
419+ string resolvedDependenciesFilesItemName = referenceItemName + "_ResolvedDependencyFiles" ;
420+ string allDependentFilesItemName = referenceItemName + "_AllDependentFiles" ;
419421 string targetFrameworkDirectoriesName = GenerateSafePropertyName ( project , "_TargetFrameworkDirectories" ) ;
420422 string fullFrameworkRefAssyPathName = GenerateSafePropertyName ( project , "_FullFrameworkReferenceAssemblyPaths" ) ;
421423 string destinationFolder = String . Format ( CultureInfo . InvariantCulture , @"$({0})\Bin\" , GenerateSafePropertyName ( project , "AspNetPhysicalPath" ) ) ;
@@ -452,14 +454,24 @@ private static void AddTasksToCopyAllDependenciesIntoBinDir(
452454 rarTask . SetParameter ( "FindRelatedFiles" , "true" ) ;
453455 rarTask . SetParameter ( "TargetFrameworkMoniker" , project . TargetFrameworkMoniker ) ;
454456 rarTask . AddOutputItem ( "CopyLocalFiles" , copyLocalFilesItemName , null ) ;
457+ rarTask . AddOutputItem ( "ResolvedDependencyFiles" , resolvedDependenciesFilesItemName , null ) ;
455458
456- // Copy all the copy-local files (reported by RAR) to the web project's "bin"
459+ // Merge copy-local files and resolved dependency files (reported by RAR) together
460+ ProjectTaskInstance mergeCopyLocalToAllDependenciesTask = target . AddTask ( "CreateItem" , null , null ) ;
461+ mergeCopyLocalToAllDependenciesTask . SetParameter ( "Include" , "@(" + copyLocalFilesItemName + ")" ) ;
462+ mergeCopyLocalToAllDependenciesTask . AddOutputItem ( "Include" , allDependentFilesItemName , null ) ;
463+
464+ ProjectTaskInstance mergeResolvedDependencyFileslToAllDependenciesTask = target . AddTask ( "CreateItem" , null , null ) ;
465+ mergeResolvedDependencyFileslToAllDependenciesTask . SetParameter ( "Include" , "@(" + resolvedDependenciesFilesItemName + ")" ) ;
466+ mergeResolvedDependencyFileslToAllDependenciesTask . AddOutputItem ( "Include" , allDependentFilesItemName , null ) ;
467+
468+ // Copy dependencies to the web project's "bin"
457469 // directory.
458470 ProjectTaskInstance copyTask = target . AddTask ( "Copy" , conditionDescribingValidConfigurations , null ) ;
459- copyTask . SetParameter ( "SourceFiles" , "@(" + copyLocalFilesItemName + ")" ) ;
471+ copyTask . SetParameter ( "SourceFiles" , "@(" + allDependentFilesItemName + ")" ) ;
460472 copyTask . SetParameter (
461473 "DestinationFiles" ,
462- String . Format ( CultureInfo . InvariantCulture , @"@({0}->'{1}%(DestinationSubDirectory)%(Filename)%(Extension)')" , copyLocalFilesItemName , destinationFolder ) ) ;
474+ String . Format ( CultureInfo . InvariantCulture , @"@({0}->'{1}%(DestinationSubDirectory)%(Filename)%(Extension)')" , allDependentFilesItemName , destinationFolder ) ) ;
463475 }
464476
465477 /// <summary>
0 commit comments