Avatar billede 4u2x Nybegynder
02. juli 2002 - 12:13 Der er 23 kommentarer og
1 løsning

Bug i ASP.Net

Det er meningen at hvis man indtaster brugernavnet "brian", skal den registrere en Session (UserName) med brugernavnet som værdi. Og bagefter skal den så udskrive en linje hvor brugernavnet er nævnt.

Fejlen:

Compiler Error Message: CS0118: 'System.Web.UI.Page.Session' denotes a 'property' where a 'method' was expected

<%@ Page Language="C#" %>
<script runat="server">

    void LoginBtn_Click(Object sender, EventArgs e) {
   
        if (Page.IsValid) {
            if (UserName.Text == "brian") {
                Session("UserName") = UserName;
                Response.Write(Session("UserName"));
                Response.Write("Skriv ?user= UserName for at vise en bruger");
            }
        }
    }

</script>
<html>
<head>
</head>
<body style="FONT-FAMILY: arial">
    <form runat="server">
        Username:<br>
        <asp:TextBox id="UserName" runat="server"></asp:TextBox>
        <br>
        <asp:button id="LoginBtn" onclick="LoginBtn_Click" runat="server" text="Login"></asp:button>
    </form>
</body>
</html>
Avatar billede dgivoni Nybegynder
02. juli 2002 - 12:45 #1
du skal erstatte Session("UserName") med Session["UserName"] fordi du bruger c#.
Avatar billede 4u2x Nybegynder
02. juli 2002 - 12:56 #2
hvordan udskriver jeg så brugernavnet?

både alene, så jeg kan bruge det i form at funktioner, og hvordan jeg skriver det i linjer med tekst.?
Avatar billede dgivoni Nybegynder
02. juli 2002 - 13:02 #3
du skal bare have et .Text på i linjen:
Session["UserName"] = UserName.Text;
Så skriver den brian, hvis den modtager brian.
Avatar billede 4u2x Nybegynder
02. juli 2002 - 13:07 #4
jo men det var ik helt det, jeg mente.

Hvis nu jeg gerne vil udskrive mit brugernavn inde en tekst, hvad skal jeg så skrive?
Avatar billede dgivoni Nybegynder
02. juli 2002 - 13:16 #5
nå, sorry :-)
du kan gøre det sådan her:
response.write("Mit brugernavn er: " + Session["UserName"] + ".")
Avatar billede 4u2x Nybegynder
02. juli 2002 - 15:25 #6
hvad hvis jeg vil have en formel som checker
fx:

if(UserName == ""){
Response.Write("du er ikke logget ind!")
}

else ........
Avatar billede dgivoni Nybegynder
02. juli 2002 - 15:36 #7
jeg tror ikke helt jeg forstår hvad du mener?
Avatar billede 4u2x Nybegynder
02. juli 2002 - 15:40 #8
den skal tjekke om man har en Session med titlen "UserName" registreret på sin computer...
Avatar billede dgivoni Nybegynder
02. juli 2002 - 15:51 #9
så tror jeg at flg. skulle gøre det:
if (session["UserName"] == "")
{
  Response.Write("du er ikke logget ind!");
}
Avatar billede 4u2x Nybegynder
02. juli 2002 - 16:00 #10
nope den virker ik
Avatar billede 4u2x Nybegynder
02. juli 2002 - 16:04 #11
Compiler Error Message: CS1519: Invalid token 'if' in class, struct, or interface member declaration
Avatar billede dgivoni Nybegynder
02. juli 2002 - 16:07 #12
har du placeret den i en funktion?
den skal være i
void Page_Load(Object sender, EventArgs e)
{
  //her skal koden være   
}
for at det bliver tjekket hver gang siden hentes
Avatar billede 4u2x Nybegynder
02. juli 2002 - 16:11 #13
her er koden:

<%@ Page Language="C#" %>
<script runat="server">

    void Page_Load(Object sender, EventArgs e)
{
        if (session["UserName"] == "")
        {
        Response.Write("du er ikke logget ind!");
        }
        else {
        Response.Write("Du er logget ind i min database");
        }
}

</script>

----------------------------

her er fejlen:

Compiler Error Message: CS0103: The name 'session' does not exist in the class or namespace 'ASP.f_aspx'
Avatar billede askhoej Praktikant
02. juli 2002 - 16:12 #14
Hva med :

if (session["UserName"] == null)
{
  Response.Write("du er ikke logget ind!");
}

/askhoej
Avatar billede askhoej Praktikant
02. juli 2002 - 16:13 #15
Hva med :

if (session["UserName"] == null)
{
  Response.Write("du er ikke logget ind!");
}

/askhoej
Avatar billede 4u2x Nybegynder
02. juli 2002 - 16:15 #16
askhoej >> der komme samme fejl som hos dgivoni
Avatar billede dgivoni Nybegynder
02. juli 2002 - 16:17 #17
jeg tror det er fordi C# er case-sensitiv, du skal skrive Session med stort
Avatar billede 4u2x Nybegynder
02. juli 2002 - 16:20 #18
LOL, ja nu virker den *G*
Avatar billede 4u2x Nybegynder
02. juli 2002 - 16:24 #19
hvad gør man, hvis man vil slette Sessions?
Avatar billede dgivoni Nybegynder
02. juli 2002 - 16:30 #20
jeg er ikke helt sikker, men hvis en session-variabel bliver opfattet som et objekt, så burde du kunne skrive
Session["UserName"].Dispose();
så tager .Nets garbagecollection sig af at frigøre objektet.
Avatar billede 4u2x Nybegynder
02. juli 2002 - 16:35 #21
den kommer med fejlen:

Compiler Error Message: CS0117: 'object' does not contain a definition for 'Dispose'
Avatar billede askhoej Praktikant
02. juli 2002 - 16:38 #22
Session.Clear();
Session.Abandon();
Avatar billede 4u2x Nybegynder
02. juli 2002 - 16:44 #23
askhoej >> takker
Avatar billede 4u2x Nybegynder
02. juli 2002 - 16:56 #24
øøhh ingen af dem virker :-/
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