Avatar billede mach3 Nybegynder
07. januar 2005 - 15:14 Der er 5 kommentarer og
1 løsning

Request.ServerVariables["LOGON_USER"]

Jeg skal have fat i brugernavnet for at kunne finde ud af hvilke funktioner som skal være tilgængelige.

Jeg har en klasse PageTemplate som alle de andre klasser nedarver fra. PageTemplate har en
protected override void OnInit(System.EventArgs e)

hvor jeg tænkte jeg kunne skrive:
string strLogon = Request.ServerVariables["LOGON_USER"];


Men det kan man ikke, strLogon er bare blank.

Hvis man gør det fra de andre klasser (alle de andre klasser har en Page_Load) virker det fint.

Så jeg skal egentligt nok bare lave en Page_Load inde i Page_Template, men hvordan er det lige jeg gør det? Alle de andre klasser har jo deres egen Page_Load.

Mvh
Avatar billede mach3 Nybegynder
07. januar 2005 - 15:18 #1
Grunden til at jeg vil lægge det i Page_Template klassen er fordi det er her der er funktionen:
protected void LoadControls()

som bliver kaldt i
protected override void OnInit(System.EventArgs e) (også i Page_Template)

Og inde i LoadControls() har jeg en switch case, som loader en kontrol alt efter hvilken slags bruger der er tale om.

LoadControls() bliver kaldt inde fra OnInit i Page_Template

Håber det giver mening
Avatar billede mach3 Nybegynder
07. januar 2005 - 15:20 #2
Min PageTemplate ser i store træk således ud:

protected void LoadControls()

protected override void OnInit(System.EventArgs e)
{
  LoadControls()
}
Avatar billede mach3 Nybegynder
07. januar 2005 - 15:43 #3
Shit jeg er jo en total abe:

Jeg havde byttet om på rækkefølgen af tingene inde i OnInit (her er det som det skal være):

this.MainForm.ID = "test";                       
this.Controls.Add(MainForm);
base.OnInit(e);
strLogon = Request.ServerVariables["LOGON_USER"];
LoadControls();

Før havde jeg strLogon linjen øverst - tsk tsk tsk :-)

Men det hjælper lige at få skrevet tingene ned, så tænker man også selv over det på en anden måde.

Jeg lukker.
Avatar billede snepnet Nybegynder
07. januar 2005 - 17:41 #4
hej mach3 - prøv at tage en kigger på this.User.Identity.Name
mvh
Avatar billede mach3 Nybegynder
07. januar 2005 - 23:29 #5
snep - er det det som man skal anvende i asp.net?
Avatar billede snepnet Nybegynder
07. januar 2005 - 23:57 #6
skal og skal ... man skal jo ikke nødvendigvis lade sig diktere, men User-propertien er i hvert fald bygget til det, og returnerer dig et IPrincipal, og det er via det du kan hente kendte brugeroplysninger (hvis de findes).

jeg vil da gerne anbefale dig at bruge det... jeg synes ihvert fald selv det er rarere at arbejde med en User.Identity.Name end Request.ServerVariables["LOGON_USER"].
Det er en god objektorienteret og typestærkadgang til oplysningerne, og kompileren finder fejlene,

mvh
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