Как вернуть тип контента image / jpg и внутренний html, который byte [] в клиенте - PullRequest
1 голос
/ 19 ноября 2011

Я вытаскиваю простой jpg из файловой системы, вот так ...

            var objz = "C:\\projects\\Desert.jpg";
            byte[] imageSampleData = ReadImageToBytes(objz);
            return imageSampleData;

(см. Ниже описание реализации btyes)

byte[] ReadImageToBytes(string sPath)
        {
            byte[] data = null;
            FileInfo fInfo = new FileInfo(sPath);
            long numBytes = fInfo.Length;
            FileStream fStream = new FileStream(sPath, FileMode.Open,
                                                    FileAccess.Read);
            BinaryReader br = new BinaryReader(fStream);

            data = br.ReadBytes((int)numBytes);
            return data;
        }

Тогда я пытаюсь вернуть это из ASPNET MVC ActionResult примерно так ...

return File(byteArrayFromMethodAbove, "image/jpg");

Затем на клиенте я пытаюсь установить src изображения следующим образом ...

<script type="text/javascript">
    $(document).ready(function () {
        loadImage();
    });

    function loadImage() {
        $.ajax({
            type: "GET",
            url: "http://localhost:49415/Home/About",
            data: {},
            dataType: "jpg",
            success: function (datasrc) {
                $('#fk').attr('src', datasrc);
            }
        });
    }
    </script>

Но пока что изображение не соответствует тому, что я делаю на стороне клиента (или кодировка вообще неверна). В настоящее время, наблюдая за firebug, я вижу некоторые сумасшедшие данные как src, но они не верны.

Я нашел тонну из вопроса / ответов на сайте, но ни один из которых, кажется, на самом деле не работает

Любая помощь будет высоко ценится (с использованием MVC 2 и jQuery 1.4.1)

1 Ответ

2 голосов
/ 19 ноября 2011

Использование jquery здесь излишне.Просто установите src = url и позвольте браузеру выполнить загрузку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...