Как я могу передать необработанный System.Drawing.Image к .ashx? - PullRequest
1 голос
/ 04 июня 2010

Я занимаюсь разработкой приложения, которое хранит изображения в виде строк Base64 в XML-файлах. Я также хочу разрешить пользователю обрезать изображение перед сохранением его в файл, желательно, все в памяти, без необходимости сохранения временного файла, а затем удалить его. Чтобы отобразить вновь загруженное изображение, мне нужно создать обработчик HTTP, к которому я могу привязать asp: Image. Единственные примеры для этого онлайн требуют передачи .ashx ID и затем извлечения изображения из БД или другого хранилища данных. Можно ли как-то передать необработанные данные в .ashx, чтобы вернуть изображение?

Спасибо

Mike

Ответы [ 3 ]

0 голосов
/ 08 июня 2010

Изображение может быть POST для сайта, как и любой другой файл, и HttpHandler может перехватывать входящие данные и работать с ними.

Хитрость будет просто в том, чтобы получить представление в памяти файла, отправленного обработчику.

0 голосов
/ 29 июня 2010

В итоге мне пришлось просто использовать AJAX и временные файлы, чтобы сделать это. Похоже, не было простого способа передачи двоичных данных непосредственно в обработчик.

0 голосов
/ 04 июня 2010

Предполагая, что у вас никогда не будет фермы серверов, вы можете перевести образ в состояние сеанса.

Однако, это не будет полностью надежно.

Лучший способ сделать это - использовать базу данных.

...