Avatar billede ameq Nybegynder
27. april 2005 - 10:58 Der er 13 kommentarer og
1 løsning

hjælp til using System.Web.Security;

Hej.
På min side bruger jeg så FormsAuthentication, det virker også fint fint hvis jeg bruger FormsAuthentication.RedirectFromLoginPage(TextBox_Bruger_Navn.Text,false);

men den smider bruger over på en anden side. men jeg har lavet den her underside, hvor brugerne kommer til fra et link i en mail.

På den side vil jeg godt havde at bruger også blever logget ind. Men de skal bleve på siden, så jeg kan ikke bruger FormsAuthentication.RedirectFromLoginPage, er der en anden metode til at logge brugerne ind?
Avatar billede burningice Nybegynder
27. april 2005 - 11:57 #1
brug

FormsAuthentication.SetAuthCookie(userName, createPersistentCookie, FormsAuthentication.FormsCookiePath);
Avatar billede burningice Nybegynder
27. april 2005 - 11:58 #2
det er også den metode der bliver brugt internt af RedirectFromLoginPage:

public static void RedirectFromLoginPage(string userName, bool createPersistentCookie, string strCookiePath)
{
      FormsAuthentication.Initialize();
      if (userName != null)
      {
            FormsAuthentication.SetAuthCookie(userName, createPersistentCookie, strCookiePath);
            HttpContext.Current.Response.Redirect(FormsAuthentication.GetRedirectUrl(userName, createPersistentCookie), false);
      }
}
Avatar billede ameq Nybegynder
28. april 2005 - 08:16 #3
men vel den logge bruger ind? uden man skifter side?
Avatar billede burningice Nybegynder
28. april 2005 - 09:09 #4
FormsAuthentication.SetAuthCookie(userName, createPersistentCookie, strCookiePath); sørger for at logge brugeren ind. Response.Redirect gør at man skifter side. Så hvis du undlader Response.Redirect bliver brugeren logget ind uden at der skiftes side.
Avatar billede ameq Nybegynder
28. april 2005 - 09:37 #5
okey, takker jamen så tror jeg har den, vil lige prøve =)
Avatar billede ameq Nybegynder
28. april 2005 - 12:23 #6
hm, når jeg trykker på mit link så kommer jeg godt nok ind på siden

men jeg er ikke logget ind, eller det blever ikke vist, for i en user control tester jeg om man er logget ind eller ej.

det jeg har lavet ind til nu er

Session["Bruger"] = _bm.Hent_Bruger(n);
FormsAuthentication.SetAuthCookie(((Bruger_)Session["Bruger"]).Bruger_Navn,false);

Det stå i min Page_Load, og den blever vel load før user controlen ik?
Avatar billede burningice Nybegynder
28. april 2005 - 13:16 #7
du kan evt. prøve at kalde

FormsAuthentication.Initialize();

først
Avatar billede burningice Nybegynder
28. april 2005 - 13:17 #8
og jo, Page_Load bliver udført før Control_Load
Avatar billede ameq Nybegynder
28. april 2005 - 13:24 #9
yes, den tænke jeg godt på =)
Avatar billede burningice Nybegynder
28. april 2005 - 13:31 #10
men hvordan tester du om man er logget ind? Jeg tror nemlig faktisk at der skal ske et nyt request til serveren før at Page.User bliver sat (det bliver godt i Authenticate_Request i global.asax, og det kræver et nyt request.
Avatar billede ameq Nybegynder
14. juni 2005 - 08:42 #11
det vikrer fint fint, hvis jeg selv opdater siden, for min user controle blever vist ikke opdatet, for jeg har en if sættingen der tester om bruger er logget ind eller ej, men er det en mulighed for at reload en user controle?
Avatar billede burningice Nybegynder
26. juni 2005 - 19:37 #12
nej... en usercontrol er jo en del af en side, så du skal reloade hele siden... det nemmeste vil være at lave en Response.Redirect til samme side
Avatar billede ameq Nybegynder
05. juli 2005 - 18:48 #13
okey tak kommer du med at svar?
Avatar billede ameq Nybegynder
11. april 2006 - 13:58 #14
lukker
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