2014-08-15 4 views
0

Я пытаюсь создать веб-страницу Sharepoint для пользователя, чтобы просмотреть и выбрать файл из общего ресурса на нашем файловом сервере. Затем мне нужно создать ссылку на этот файл для отображения в списке ссылок, которые перейдут на нашу страницу интрасети Sharepoint. Я создал пользовательскую веб-часть, используя asp.net/c#, чтобы сделать это, но я зациклился на том, как получить UNC-путь к документу. По моему мнению, он не будет работать с элементом управления файловой системой asp.net или элементом ввода html. Какие еще существуют варианты? Я действительно не хочу, чтобы пользователь вводил весь путь к документу. Это должно быть повторно используемым решением, чтобы мои пользователи могли создавать новые списки ссылок на документы, когда они этого желают. Спасибо за любой совет.Получить UNC-файл, который конечный пользователь выбирает

+0

Любопытно ... если вы используете SharePoint, почему бы не использовать управление документами SharePoint и не размещать эти файлы в библиотеке документов, а не в общем доступе к файлу? Тогда у вас будет гораздо больше контроля над ссылкой на файл. – BateTech

ответ

0

Я не думаю, что полный путь к файлу поддерживается или разрешен через современные веб-браузеры через элемент управления загрузкой файлов. То, что вам нужно сделать, это создать что-то серверное, которое использует учетную запись службы для доступа к файловому ресурсу, а затем клиент (веб-страница) может вызывать код на стороне сервера, когда он обходит общий ресурс файла, пока пользователь не выберет файл.

Пример:

  • сервер: при загрузке, вот содержимое "\ сервер \ дом"
  • клиента: показать содержимое вложенной папки "\ сервер \ дом \ фотографии"
  • сервера : подключается к "\ сервер \ дом \ фотографии" и возвращает содержимое
  • клиента: Выбор "\ сервер \ дом \ фотографии \ foo.jpg"

ЗАКАНЧИВАТЬ System.IO.Dir ectory http://msdn.microsoft.com/en-us/library/system.io.directory(v=vs.100).aspx, чтобы получить список содержимого каталога на стороне сервера (GetFiles, GetDirectories, GetFileSystemEntries и т. д.), а затем вы можете вернуть эти результаты клиенту.

+0

Я боялся, что это так. Могу ли я обойти это, если это сопоставленный диск, к которому я уже знаю путь. Могу ли я получить относительный путь с помощью сопоставленного диска? – ghg565

+0

Все зависит от браузера и того, как браузер хочет его реализовать ... но AFAIK, большинство современных браузеров отправляют только имя файла (без пути) при использовании элементов ''. Назад в тот же день, браузеры, возможно, отправили полный путь, но теперь они не беспокоились о проблемах безопасности/конфиденциальности, а b/c в большинстве случаев сервер заботится только о имени файла. Вот простой бесплатный пример управления селектором файлов. Telerik также предлагает платную версию. ПРИМЕЧАНИЕ. Я не тестировал этот элемент управления, просто найденный с помощью быстрого поиска. Http://www.codeproject.com/Articles/301328/ASP-NETUser-Control-File-Browser – BateTech