У меня есть сайт ASP.NET, расположенный на локальном сервере (MY_SERVER). И одна из вещей, которые он делает, это извлечение файлов tiff, которые расположены на другом сервере (ANOTHER_SERVER). Расположение каждого из этих файлов хранится в SQL. Я подтягиваю каждое из этих изображений и должен отображать их. Проблема в:
файлы не имеют расширения tiff (это важно?)
они вообще не отображаются.
Я использую элемент управления Image для отображения этих изображений, и я не уверен, имеет ли значение, что расширение не установлено (знает ли элемент управления изображением разницу между jpg и tiff без расширения?)
Я предполагаю, что изображения не отображаются, потому что они не находятся на том же сервере MY_SERVER, на котором расположены изображения (ANOTHER_SERVER). Любые идеи о том, как это исправить?
edit: на самом деле отображение файлов tiff было удивительно простым:
protected void Page_Load(object sender, EventArgs e)
{
Response.ContentType = "image/png";
new Bitmap(Request.QueryString["ImagePath"]).Save(Response.OutputStream, ImageFormat.Gif);
}
но поскольку изображения расположены на ANOTHER_SERVER, я все еще не могу получить к ним доступ. Я могу просто сделать хак, скопировав их в локальный каталог на MY_SERVER, но должен быть простой способ исправить это. Кто угодно?
"ImagePath"
является UNC, ваш пример кода должен работать. Если это не так, похоже, что веб-сервер работает от имени пользователя, который не может получить доступ к UNC. Вы можете убедиться в этом, используяFile.Exists("ImagePath")
. Кроме того, ваш пример кода читает только первый кадр каждого TIFF. Это все одностраничные файлы? - person flipdoubt   schedule 14.04.2010