Home All Groups Group Topic Archive Search About

How to realize a C# page that give back an image instead of an html page

Author
12 Dec 2006 3:16 PM
Etantonio
Good morning,
I have a static html page where I want to load image that day to day
are in a different path,
to achieve this I would want that the link point to a c# page where I
create dinamically the new url,
but how I can arrange a c# page that give back an image and not an html
page ?
Can you help me to realize this ??

Many Thanks,

Eng. Antonio D'Ottavio
www.etantonio.it/en

Author
12 Dec 2006 4:06 PM
Michael Letterle
Change the Response.ContentType of the page to be whatever it needs to
be for the image type you have (ie "image/jpeg") then use a
BinaryWriter that writes to Response.OutputStream.

Show quoteHide quote
On Dec 12, 10:16 am, "Etantonio" <etanto***@gmail.com> wrote:
> Good morning,
> I have a static html page where I want to load image that day to day
> are in a different path,
> to achieve this I would want that the link point to a c# page where I
> create dinamically the new url,
> but how I can arrange a c# page that give back an image and not an html
> page ?
> Can you help me to realize this ??
>
> Many Thanks,
>
> Eng. Antonio D'Ottaviowww.etantonio.it/en
Are all your drivers up to date? click for free checkup

Author
12 Dec 2006 6:14 PM
Samuel R. Neff
Instead of using a BinaryWriter and Response.OutputStream you can just
use Response.WriteFile.  Same result, less code.

HTH,

Sam

------------------------------------------------------------
We're hiring!  B-Line Medical is seeking Mid/Sr. .NET
Developers for exciting positions in medical product
development in MD/DC.  Work with a variety of technologies
in a relaxed team environment.  See ads on Dice.com.


On 12 Dec 2006 08:06:45 -0800, "Michael Letterle"
<michael.lette***@gmail.com> wrote:

Show quoteHide quote
>Change the Response.ContentType of the page to be whatever it needs to
>be for the image type you have (ie "image/jpeg") then use a
>BinaryWriter that writes to Response.OutputStream.
>
>On Dec 12, 10:16 am, "Etantonio" <etanto***@gmail.com> wrote:
>> Good morning,
>> I have a static html page where I want to load image that day to day
>> are in a different path,
>> to achieve this I would want that the link point to a c# page where I
>> create dinamically the new url,
>> but how I can arrange a c# page that give back an image and not an html
>> page ?
>> Can you help me to realize this ??
>>
>> Many Thanks,
>>
>> Eng. Antonio D'Ottaviowww.etantonio.it/en
Author
12 Dec 2006 11:26 PM
Etantonio
Thanks for your reply.
Using your suggestion I arranged the following code in file
http://www.etantonio.it/Temp/Trad.aspx

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
<%@ Page Language="c#" Trace="true" Debug="true" %>
<%@ import Namespace="System.Net" %>
<%@ import Namespace="System.IO" %>
<%@ import Namespace="System.Drawing" %>

<script runat="server">
    void Page_Load(Object Src, EventArgs E )
    {
       if (!Page.IsPostBack)
       {
            String sAddressTime = "http://www.etantonio.it/images/zh.gif";

            HttpWebRequest wreq;
            HttpWebResponse wresp;
            Stream mystream;
            Bitmap bmp;


            bmp = null;
            mystream = null;
            wresp = null;
            try
            {
                wreq = (HttpWebRequest)WebRequest.Create(sAddressTime);

                wresp = (HttpWebResponse)wreq.GetResponse();
                if ((mystream = wresp.GetResponseStream()) != null)
                {
                    Response.Clear();
                    Response.ContentType = "image/jpeg";
                    Response.StatusCode = 200;
                    Bitmap bmpOriginal = new Bitmap( "yourimage.jpg" );
                    bmp = new Bitmap(mystream);
                    bmp.Save( Response.OutputStream, bmp.RawFormat );
                    bmp.Dispose();
                    bmp = null;
                    Response.Close();
                    return;
                }
            }
            finally
            {
                if (mystream != null)
                    mystream.Close();
                if (wresp != null)
                    wresp.Close();
            }
       }
  }
</script>
<html><head>/head><body ></body></html>
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


that it is called from a simple html file named CallTrad.aspx


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
/>
<title>Untitled Document</title>
</head>

<body>
<img src="http://www.etantonio.it/Temp/Trad.aspx" />
</body>
</html>
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


the result is that I've not the image I require,
I simply have a blank pge but with no image, any suggestion to me ??
Thanks

Antonio D'Ottavio
www.etantonio.it/en



Post Thread options