1

我有一个大问题,我需要你的帮助。我正在尝试发送到 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];
    }

PD:我很抱歉我的英语不好,但我的母语是西班牙语 PD2:感谢在这种情况下可以帮助我的所有人

4

2 回答 2

0

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

添加隐藏字段

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

然后在你的页面加载

 if (!IsPostBack)
 {
   string datosRequest = Request.QueryString["DATOS"];
    if(datosRequest  != null)
    {
      //do something
      hidden1.Value = datosRequest ;
    }
 }
 else
 {
   datosRequest = hidden1.Value;
 }
于 2014-12-29T15:39:59.257 回答
0

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

Response.Cookies.Clear ();
myCookie.Expires = DateTime.Now.AddDays (1D);
于 2014-12-29T19:57:36.433 回答