Pouet les gens ! Ce sujet est un doublon, mais manifestement, les gens font de l'urticaire dès qu'il s'agit d'ASP.Net. Donc, je RE-poste ici, histoire d'atténuer la réaction allergique.

Donc, ici, je suis censé charger un doc pdf au click d'un bouton.
seulement voilà, quand on entre dans la condition du if et qu'on recharge la page, le doc ne s'ouvre pas. obligé de cliquer une deuxième fois (donc relancer l'event) ; alors que, ZUT, l'ouverture est commandée AVANT le if !
Donc ça devrait s'ouvrir AVANT de recharger cette de page
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
        protected void IbLinkToDoc_Click(object sender, ImageClickEventArgs e)
        {
            iddocument = Session["ag"].ToString();
            Session["rf"] = getMd5Hash(Session["ci"].ToString());
            Session["dl"] = String.Format("http://www.monsite.com/lcsubscription/consultation.aspx?d={0}&s={1}&r={2}&m={3}", Session["dt"].ToString(), Session["s"].ToString(), Session["rf"].ToString(), Session["ml"].ToString());
            string docurl = null;
            string proxdir = @"D:\xxxxx\";
            string ecgsdir = @"D:\yyyyyy\";
            string girdir = @"D:\zzzzzz\";
            string docdir = "";
            string doc = "";
            switch (Session["tp"].ToString())
            {
                case "gir":
                    doc = "ECG" + iddocument + ".PDF";
                    docdir = girdir;
                    break;
                case "ecgs":
                    doc = "ECG" + iddocument + ".PDF";
                    docdir = ecgsdir;
                    break;
                default:
                    doc = "ASF" + iddocument + ".PDF";
                    docdir = proxdir;
                    break;
            }
 
            docurl = docdir + doc;
 
            FileStream MyFileStream = new FileStream(docurl, FileMode.Open);
            long FileSize;
            FileSize = MyFileStream.Length;
            byte[] Buffer = new byte[(int)FileSize];
            MyFileStream.Read(Buffer, 0, (int)MyFileStream.Length);
            MyFileStream.Close();
            Response.ContentType = "application/pdf";
            Response.AddHeader("content-disposition", "attachment; filename= " + doc);
            Response.BinaryWrite(Buffer);
 
            if (!Tablesendmail.Visible && !TableForward.Visible)
            {
                Tablesendmail.Visible = true;
                TableForward.Visible = true;
                Response.Redirect(Session["dl"].ToString());
            }            
        }
Si quelqu'un y comprend quelque chose...