виртуальный каталог - Как загрузить файлы изображений для просмотра asp.net? - PullRequest
0 голосов
/ 28 июня 2018

В Интернете так много похожих вопросов, но ни один из них не помог мне в этом.

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

Я разработчик, но не сетевой человек. Я немного знаю об IIS, и с помощью диспетчера IIS я создал виртуальный каталог в папке приложения asp.net, который сопоставляется с адресом UNC на другом сервере, где находятся изображения. Используя IIS Manager, я могу исследовать виртуальный каталог и видеть все файлы там. Проблема в том, что они отображаются в моем приложении asp.net.

Я попытался установить разрешения для папки «Сетевая служба», IUSR_aspnetserver и мои собственные учетные данные; Я пробовал различные перестановки строки пути с / или // или \ или \ и т. Д. Я пытался подражать, но я не знаю, правильно ли я это делаю. Я разместил на странице ярлык «отладка», который указывает путь к изображению во время работы приложения, и это правильно. Кажется, ничего не работает.

Очевидно, что мне чего-то не хватает, но мое понимание сети приближается к нулю, мой опыт работы с IIS едва ли лучше, и я не могу заставить своих сотрудников ИТ-экспертов помочь. И прежде чем делать какие-то выводы, я отличная личность.

Любые идеи будут оценены.

Спасибо!

РЕДАКТИРОВАТЬ для @MohsinMehmood:

(надеюсь, это не слишком запутанно)

На странице есть сопоставленный диск в IIS для общего ресурса UNC \\OtherServer\AppName\Images в папку с именем ReceiptImages.

Файл web.config содержит эту запись:

 <appSettings>
    <add key="ImageFilePath" value="ReceiptImages/"/>
 </appSettings>

А в событии PageLoad у меня есть

 ViewState("ImagesPath") = ConfigurationManager.AppSettings("ImageFilePath")

Чтобы создать строку глобального пути.

Тогда в коде (VB) это:

Dim btnReceiptThumbnailButton As New ImageButton
      With btnReceiptThumbnailButton
           .ID = "btn" & LineItem
           .CssClass = "thumbnails"
           .ImageAlign = ImageAlign.AbsMiddle
           .Visible = True
           .BackColor = Drawing.Color.White
           .BorderColor = Drawing.Color.Black
           .BorderWidth = 1
           .ImageUrl = ViewState("ImagesPath") & LineItem
           .CommandName = "GetReceiptImage"
           .CommandArgument = LineItem

           End With

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

...