Скопируйте файлы из набора папок на одном сервере в тот же набор папок на другом сервере C#
У меня есть список (list1) с именами файлов:
C:\\Work\\Server1\\CSRegWeb\\Transform\\Faq.xslt
C:\\Work\\Server1\\CSRegWeb\\Content\\Axxess.xml
C:\\Work\\Server1\\CSRegWeb\\kleenex.aspx
C:\\Work\\Server1\\CSRegWeb\\Content\\dell.xml
Мне нужно скопировать эти файлы на другой сервер (с той же структурой папок), который называется server2. Итак, расположение папок:
C:\\Work\\Server2\\CSRegWeb\\Transform\\Faq.xslt
C:\\Work\\Server2\\CSRegWeb\\Content\\Axxess.xml
C:\\Work\\Server2\\CSRegWeb\\kleenex.aspx
C:\\Work\\Server2\\CSRegWeb\\Content\\dell.xml
Мне нужно скопировать файлы (которые могут быть скопированы или перезаписаны). (Пока это server1 и server2, имена серверов могут меняться). Любая помощь будет оценена.
Вот код, который у меня есть:
DESTINATION_PROJECT_ROOT = "C:\\Work\\Server2"
projectName = "CSRegWeb"
string dest = DESTINATION_PROJECT_ROOT + "\\" + projectName + "\\" ;
foreach (FileInfo k in List1)
{
foreach (FileInfo j in List2)
{
if (k.Name == j.Name && k.Directory.Name == j.Directory.Name)
{
File.Copy(k.FullName, dest , true);
break;
}
}
}
Это только заменяет измененные файлы.
1 ответ
Решение
Я не думаю, что вы можете получить к нему доступ таким образом. Попробуйте это так вместо этого:
string path = @"\\Server2\CSRegWeb\Transform\Faq.xslt";
РЕДАКТИРОВАТЬ
Или, если вы храните его в web.config, попробуйте это:
<appSettings>
<add key="CopyToLocation" value="\\Server2" />
</appSettings>