2012-01-18 6 views
0

У меня есть два веб-приложения, размещенные на разных серверах. Например, например. один является основным приложением, а другой - отраслевым. В приложении филиала пользователь загрузит свои файлы, но мы хотим сохранить все загруженные файлы в главном виртуальном каталоге приложения.Загрузить файлы в другой виртуальный каталог

Так что мы помещаем путь к виртуальному каталогу основного приложения, когда мы загружаем файлы. Но мы получили сообщение об ошибке типа «Недействительный каталог» и не можем загрузить. Есть ли способ загрузить файлы из одного приложения в другое напрямую? Мы используем нормальный контроль загрузки HTML в ASP.NET и Visual Studio 2008.

Code Sample : 
main application virtual directory "http://10.10.10.1/mainapp/uploadedfiles/" 
branch application virtual directory "http://10.10.10.2/branchapp/" 

HttpPostedFile postedFile; 
string saveFile = Path.Combine("http://10.10.10.1/mainapp/uploadedfiles/", "File1.pdf"); 
postedFile.SaveAs(saveFile); 

Пожалуйста, руководство мне правильный путь, и я действительно оценил его.

Спасибо.

С наилучшими пожеланиями,

Chong

ответ

1

Я думаю, что и может поделиться каталогом и обеспечить оба приложение может получить доступ к нему, потому что эти два приложения находятся в разных серверах, путь к каталогу, возможно, так же, как: \ SERVERA \ Files \, а URL этого каталога: http://localhost/files. u может сохранять файлы на другие серверы по относительному пути, если у вас есть разрешение.

2

В элементе FileUpload метод FileUpload.SaveAs (путь) принимает физический путь, а не виртуальный путь. Поэтому, если у вас есть виртуальный путь, вам нужно будет использовать метод Server.MapPath, чтобы преобразовать его в физический путь. Используя ваш пример, вы можете захотеть изменить последнюю строку кода в:

postedFile.SaveAs (Server.MapPath (SAVEFILE))

Кроме того, вам нужно будет убедиться, что учетная запись ASP. Net работает под правами доступа к ACL для физического каталога.

Смежные вопросы