Лехко :) Только звиняйте за
код на VB.NET.
Стало быть, кусок
\ncontext.Response.Clear()\ncontext.Response.ContentType = "image/jpeg"\ncontext.Response.Cache.SetExpires(DateTime.Now.AddDays(7))\ncontext.Response.Cache.SetCacheability(HttpCacheability.Public)\ncontext.Response.Cache.SetValidUntilExpires(True)\nhotelImage.Save(context.Response.OutputStream, ImageFormat.Jpeg)\ncontext.Response.End()\n
требуется заменить на то, что требуется вам -- а именно, надо прочитать файл на сервера (из БД или из файла - я уж не знаю), выставить ContentType, добавить заголовок Сontent-Disposition" (это будет имя файла, с которым браузер предложит сохранить файл, если такое потребуется):
\ncontext.Response.AppendHeader("Content-Disposition", String.Format("inline;filename=tourml-{0}.tourml", priceID))\n
и, наконец, записать упомянутый файл в context.Response.OutputStream. Ну и кэширование настроить по желанию.
context.Response.AppendHeader("Content-Disposition", String.Format("inline;filename=tourml-{0}.tourml", priceID))