0

我是网络开发世界的新手。我正在尝试将 Web api 中的位图值返回到要在 HTML 页面上显示的 javascript,但由于某种原因它没有这样做,这是我的代码:

在 webAPI 中:

    public Bitmap  gettestBitmap()
    {
        Bitmap theBM = new Bitmap(Properties.Resources._2_15_2013_5_08_48_PM);

        return theBM;
    }

在 javascript 中,这是我的代码

var callstring = "api/Generator/gettestBitmap";
alert(callstring);
$.getJSON(callstring,
function (data) {
    alert(data);                                 
    anImage.dataSrc = data;
})
.fail(
function (jqXHR, textStatus, err)
{
    alert("All checks are correct, image was not      
           generated.\n jqXHR = " + jqXHR.responseText + "\n  
           textStatus=" + textStatus + " \n Error=" + err);});

webAPI 函数被成功调用,返回的数据是System.Drawing.Bitmap而不是实际图像

任何线索如何解决这个问题?

谢谢!

4

2 回答 2

1

找到了解决方案!!!!

只需执行以下操作:

var callstring = "api/Generator/gettestBitmap";
 $("#anImage").attr("src", callstring);
于 2013-02-22T22:22:31.260 回答
0

您可能希望返回一个字节数组,而不是现在将在发送到客户端之前进行 base64 编码。

 public byte[] gettestBitmap()
    {
        var imageBytes = File.ReadAllBytes(Properties.Resources._2_15_2013_5_08_48_PM);

    return imageBytes;
    }

您可能还想更改图像线。

anImage.attr("src", "data:image/png;base64," + data); // if format is jpeg change image/png to image/jpeg
于 2013-02-17T08:01:40.230 回答