Скопируйте файлы из набора папок на одном сервере в тот же набор папок на другом сервере 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>
Другие вопросы по тегам