将参数传递给页面

时间:2011-09-06 07:37:31

标签: c# asp.net

我正在动态生成图像,如下所示。如何将参数传递给ImageGen.aspx的{​​{1}}代码,以便可以根据该代码构建图像。

Default.aspx

此图像显示为:

  //File:ImageGen.aspx
    public partial class ImageGen: System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Bitmap image = new Bitmap(800, 400);
            //Code to generate image
            image.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
        }
    }

2 个答案:

答案 0 :(得分:4)

您可以使用查询字符串参数将值传递到页面,即default.aspx调用图像生成器页面:

Image1.ImageUrl = "~/ImageGen.aspx?imageId=1";

并在ImageGen.aspx的Page_Load方法中使用

检索此内容
string imageId = Request.QueryString["imageId"];

答案 1 :(得分:2)

您需要了解State Maintenance in ASP.NET

现在就你的情况而言 使用它的

请求查询字符串
 //File: Default.aspx
 protected void Page_Load(object sender, EventArgs e)
 {
      Image1.ImageUrl = "~/ImageGen.aspx?id=1";
 }

在第二个代码中使用它

 //File:ImageGen.aspx
    public partial class ImageGen: System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string id = Request.QueryString["id"];
            Bitmap image = new Bitmap(800, 400);
            //Code to generate image
            image.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
        }
    }