Avatar billede srofhest Nybegynder
12. januar 2009 - 14:05 Der er 6 kommentarer og
1 løsning

hvad betyder: Valideringen af visningstilstanden MAC mislykkedes

Valideringen af visningstilstanden MAC mislykkedes. Hvis programmet er placeret i en webfarm eller en klynge, skal du kontrollere, at <machineKey>-konfigurationen angiver den samme validationKey og valideringsalgoritme. AutoGenerate kan ikke bruges i en klynge.

Har isoleret problemet til denne kode.

        foreach (string name in Request.Form)
        {
            if (Request.Form[name] != null)
            {
                Response.Write(name);
                Response.Write(Request.Form[name]);
            }

Nogen idé om hvorfor den fejl sker?
Avatar billede srofhest Nybegynder
12. januar 2009 - 14:11 #1
Btw: hvis jeg går direkte ind på siden uden at poste noget til den, så loader den fint. men hvis jeg sender noget med "Post" så crash'er siden.
Avatar billede websmith Nybegynder
12. januar 2009 - 20:53 #2
http://msdn.microsoft.com/en-us/library/ms998288.aspx - kig her.

Når man bruger forms i asp.net, så bliver indholdet af formen lagt i viewstate, så når siden returnerer, så har alle elementer den state de havde på forrige side. Nogen gange går der noget galt med krypteringen af viewstate, og så kan man hjælpe det lidt på vej, hvis man sørger for at have en statisk krypteringsnøgle.

Jeg håber du finder ud af det, dvs. du skal lave en statisk krypteringsnøgle i din web.config.

mvh
Avatar billede websmith Nybegynder
12. januar 2009 - 21:08 #3
Noget helt andet er at du burde ikke tilgå Request.Form direkte, men tilgå sidens elementer som det er tiltænkt.

Dvs. hvis du har tilføjet en asp.net TextBox, og giver den variablnavnet tbxName, så kan du efter en postback bare tilgå:

this.tbxName.Text og så har du indholdet af det som er blevet tastet ind.

Det lyder lidt som om at du prøver at lave gammeldags asp i asp.net, og det kan ikke rigtig betale sig :)
Avatar billede srofhest Nybegynder
12. januar 2009 - 22:17 #4
Nej, det er fordi jeg får data sendt tilbage fra moneybookers i et post og jeg vil selvfølgelig gerne fange dataen, og vide om betalingen gik igennem.
Avatar billede websmith Nybegynder
12. januar 2009 - 22:47 #5
En ting du kan gøre, hvilket vil gøre det meget nemmere for dig selv.

Lav en http handler i stedet for, dvs. en .ashx fil.

Der har du adgang til Request objektet som du ønsker men har ikke overhead og junk fra Page objektet.

Du skal så sige til moneybookers at de skal poste til din http handler i stedet for.

dvs. http://dinserver.dk/monebookers.ashx

mvh
Avatar billede srofhest Nybegynder
13. januar 2009 - 13:42 #6
Det lyder meget fornuftigt. tænkte bare at brugeren samt data kunne blive sendt til samme side og at det ville være meget smart. Men det kan jo faktisk være ligegyldigt.
Avatar billede srofhest Nybegynder
06. august 2010 - 03:20 #7
lukket.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester