MsBuild kopiowanie w raz z folderami przy publishu

0

Hej,

Postanowiłem napisać post bo już próbowałem na milion sposobów jak skopiować pliki w raz z folderami przy publishowaniu.
Może opiszę strukturę:
Mam folder "prepared" w którym znajdują się foldery z nazwą zgłoszenia oraz datą. W środku każdego folderu znajdują się różne paczki. Ten folder znajduje się w innym projekcie niż w tym co aktualnie jestem, ale jest mi on niezbędny jeśli chodzi o aktualny projekt abym miał te paczki.
Przy publishu chce skopiować te wszystkie foldery z plikami i wkleić je do mojego docelowego projektu.

Jaki jest problem? A no taki, że co bym nie napisał w targetach to kopiuje on mi wszystkie pliki ze wszystkich folderów i wkleja w jeden cały.

Przykład: Mam folder test1,test,2,test3 gdzie znajdują się po 3 różne paczki. Efekt końcowy to brak folderów test1-3 ale za to 9 paczek luzem w folderze "prepared" .

Ostatni target jaki zostawiłem :

<Target Name="CopyVDUPVaryonWebFramework" BeforeTargets="Publish" Condition="'$(Configuration)' == 'Release'">
	<ItemGroup>
		<FilesToCopy Include="..\..\project\WebFramework\vdup-packages\**">
			<CopyToOutputDirectory>Copyalways</CopyToOutputDirectory>
		</FilesToCopy>
	</ItemGroup>
	<Copy SourceFiles="@(FilesToCopy)" DestinationFolder="$(PublishDir)\WebFramework\vdup-packages\prepared"/>
</Target>
2

Co powiesz na to żeby powiązać źródłowy folder z projektem jako referencje / link?
screenshot-20240308230500.png
Na obrazku jest projekt ClassLibrary1 który ma folder o nazwie AdditionalContent w którym są inne pliki i foldery.
Jest też projekt ConsoleApp2. Ma on referencje do folderu AdditionalContent z projektu ClassLibrary1. (projekt ConsoleApp2 nie ma referencji do projektu ClassLibrary1).

A taki kod jest w pliki projektu .csproj który wiąże folder:

	<ItemGroup>
		<Content Include="..\ClassLibrary1\AdditionalContent\**\*.*">
			<Link>ContentFromOtherProject\%(RecursiveDir)%(FileName)%(Extension)</Link>
			<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
		</Content>
	</ItemGroup>

Po zrobieniu publish na projekcie ConsoleApp2, wszystkie pliki i podfoldery zostają skopiowane.

1 użytkowników online, w tym zalogowanych: 0, gości: 1