Mam rozwiązanie zawierające 3 projekty. Muszę skopiować widok z jednego projektu do drugiego. Jestem w stanie skopiować utworzoną bibliotekę DLL za pośrednictwem zdarzeń po kompilacji, takich jak:
Chcę więc skopiować plik z projektu nr 1 „/Views/ModuleHome/Index.cshtml” do folderu w projekcie 2. Jak skopiować plik (i) do żądanego projektu za pośrednictwem zdarzenia po kompilacji? Dzięki
c#
visual-studio-2010
BoundForGlory
źródło
źródło
Ctrl+W+O
. CzyViews\ModuleAHome
folder istnieje w lokalizacji docelowej? Spójrz na okna wyjściowego dla dokładnego polecenia wykonywane, a następnie zapoznać się z dokumentacją dla polecenia xcopy zrozumieć różne przełączniki dostępne:xcopy /?
.Zwróć uwagę na cudzysłowy w ścieżce źródłowej i docelowej, ale nie w ścieżce do pliku exludelist txt.
Zawartość ExcludedFilesList.txt jest następująca: .cs \
Używam tego polecenia, aby skopiować plik z jednego projektu w moim rozwiązaniu do innego i z wyłączeniem plików .cs.
źródło
your-source-path
iyour-destination-path
. Bez tych cytatów to w ogóle nie działa."My File.txt"
.xcopy "$ (TargetDir) * $ (TargetExt)" "$ (SolutionDir) \ Scripts \ MigrationScripts \ Library \" / F / R / Y / I
/ F - wyświetla pełne nazwy plików źródłowych i docelowych
/ R - spowoduje to nadpisanie plików tylko do odczytu
/ Y - pomija monitowanie o nadpisanie istniejącego pliku (ów)
/ I - zakłada, że miejscem docelowym jest katalog (ale musi kończyć się na)
Mała sztuczka - w miejscu docelowym musisz zakończyć znakiem \, aby powiedzieć xcopy, że celem jest katalog, a nie plik!
źródło
Wywołaj
Batch
plik, który będzie uruchamianyXcopy
dla wymaganych plików źródło do miejsca docelowegoźródło
Używam tego w ten sposób.
Zwróć uwagę na użycie tego. $ (TargetDir) ma już '\' "D: \ MyProject \ bin \" = $ (TargetDir)
Możesz znaleźć makro w Edytorze poleceń
źródło
To polecenie działa dla mnie jak urok:
To rekurencyjnie kopii co
dll
iexe
plików zMySolutionPath\libraries
Into thebin\debug
albobin\release
.Więcej informacji znajdziesz tutaj
źródło
Podobnie jak poprzednie odpowiedzi, również sugeruję
xcopy
. Chciałbym jednak dodać do odpowiedzi Hallgeira Engena/exclude
parametr. Wydaje się, że wystąpił błąd w parametrze, który uniemożliwia mu pracę z nazwami ścieżek, które są długie lub zawierają spacje, ponieważ cudzysłowy nie będą działać. Nazwy ścieżek muszą być w formacie „DOS” z „Dokumentami” tłumaczonymi na „DOCUME ~ 1” (zgodnie z tym źródłem ).Jeśli więc chcesz użyć parametru \ exclude, istnieje obejście tego problemu :
Zwróć uwagę, że ścieżki źródłowa i docelowa mogą (i powinny, jeśli zawierają spacje) być ujęte w cudzysłów, ale nie ścieżka do pliku wykluczeń.
źródło
Jeśli chcesz wziąć pod uwagę platformę (x64, x86 itp.) I konfigurację (Debug lub Release), byłoby to mniej więcej tak:
źródło