使用URL中的参数创建Winnovative

时间:2014-12-29 15:25:08

标签: c# winnovative

我有一个大问题,我需要你的帮助。我正在尝试发送到url参数以生成带有winnovative库的pdf文件。当我第一次尝试时没有问题并生成pdf但是如果我想再次获得pdf这会给我带来错误,因为url中的参数被发送并且无法请求并且在最终分配生成pdf文件时会丢失。 我附上了审核代码:

 public override void Pagina_PrimeraCarga(object sender, EventArgs e)
    {

        string datosRequest = Request.QueryString["DATOS"];
        char delimitadores = ';';
        string[] datos = datosRequest.Split(delimitadores);

        imgBanco.Attributes.Add("ImageUrl", "~/App_Themes/Imagenes/Logo.gif");
        System.DateTime fecha = new System.DateTime(2014, 12, 17);
        lblDia.Text = Convert.ToString(fecha.Day);
        lblMes.Text = Convert.ToString(fecha.Month);
        lblAno.Text = Convert.ToString(fecha.Year);

        string rutEmpresa = datos[3];
        int rut = Convert.ToInt32(rutEmpresa);
        string rutRes = rut.ToString("N0", CultureInfo.InvariantCulture).Replace(",", ".");
        rutRes = rutRes + "-" + datos[4];

        lblOficina.Text = "OFICINA: " + datos[0];
        lblNombreTitular.Text = "NOMBRE TITULAR: " + datos[1];
        lblRut.Text = "R.U.T.: " + rutRes;
        lblDireccion.Text = "DIRECCION: " + datos[2];
        lblFono.Text = "FONO: " + datos[5];
    }
P.D:我为我的英语不好道歉,但我的母语是西班牙语 P.D.2:感谢在这种情况下可以帮助我的每个人

2 个答案:

答案 0 :(得分:0)

我认为您的问题是在postBack之后您的查询字符串将为空。试试这个

添加隐藏字段

<asp:HiddenField runat="server" ID="hidden1" />

然后在你的pageLoad

 if (!IsPostBack)
 {
   string datosRequest = Request.QueryString["DATOS"];
    if(datosRequest  != null)
    {
      //do something
      hidden1.Value = datosRequest ;
    }
 }
 else
 {
   datosRequest = hidden1.Value;
 }

答案 1 :(得分:0)

我已经解决了这个问题。我想了一下,并检测到第二次传递时获取的pdf正在创建传递给另一个表单的cookie,因此没有传递数据。出于这个原因,我不得不添加2行,但我的代码用于关闭pdf此服务器删除cookie,当再次咨询时删除客户端:

Response.Cookies.Clear ();
myCookie.Expires = DateTime.Now.AddDays (1D);