Avatar billede mikkel_strack Nybegynder
28. august 2006 - 13:46 Der er 8 kommentarer og
1 løsning

Tilgå objekt i global.asax

Jeg har et instance af et objekt i min Global.asax

Jeg kan tilgå objektet hvis jeg ikke bruger code-behind - men hvis jeg laver noget i MS Visual Web Developer Express.
Er der noget jeg skal være opmærksom på for at kunne tilgå en instans af et objekt i Global.asax??

Uddyber gerne hvis jeg har formuleret spørgsmålet for kortfattet.

Mikkel
Avatar billede mikkel_strack Nybegynder
28. august 2006 - 13:47 #1
Der skal stå: "men IKKE hvis jeg laver noget i MS Vis........"
Avatar billede snepnet Nybegynder
28. august 2006 - 20:24 #2
Hej - der er 3 ting jeg gerne vil se:
- Det du har i global.asax som du gerne vil tilgå.
- Den kode der virker.
- Den kode der ikke virker.
Mvh
Avatar billede mikkel_strack Nybegynder
28. august 2006 - 21:19 #3
Hej Snerpet

Her kommer det du vil se. Det er renset for overskuelighedens skyld renset for alt overflødigt. Sætter min lid til at du (som sædvanlig) har et godt og kvalificeret bud :o)


GLOBAL.ASAX
<%@ Application Language="C#" %>
<%@ Import Namespace="E20" %>
<object runat="server" id="UserInstance" class="E20.User" scope="Session"></object>
<script runat="server">

    void Session_Start(object sender, EventArgs e)
    {
      Session.Timeout = 40;
    }

</script>

TEST1 - VIRKER
<%@ Page Language="C#" debug="true" %>

<%@ import Namespace="System" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Collections" %>
<%@ Import Namespace="E20" %>

<script runat="server">
    protected void Page_Load(object sender, EventArgs e)
    {
        UserInstance.Name = "Mikkel"; // Dette er objektet jeg ønsker at tilgå
    }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">

<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

</head>

<body>
    <form id="Form1" runat="server">

    </form>
</body>
</html>

TEST2 - VIRKER IKKE (med codebehind - lavet i visual developer express)

Codebehind

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using E20;

public partial class _test2 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        UserInstance.Name = "Mikkel";
    }
}

aspx-filen
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="test2.aspx.cs" Inherits="_test2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
   
    </div>
    </form>
</body>
</html>
Avatar billede snepnet Nybegynder
28. august 2006 - 21:43 #4
Hmm... 2 spørgsmål denne gang:
Hvorfor bruger du sådan en svedske her:
<object runat="server" id="UserInstance" class="E20.User" scope="Session"></object>
og har du kigget på Membership mulighederne i 2.0
Mvh
Avatar billede snepnet Nybegynder
28. august 2006 - 21:44 #5
Du kan bare lave en property på klassen:

private User m_SessionUser;

public User SessionUser
{
  get{return m_SessionUser;}
}

(Du skal self. også sætte den et eller andet sted fra ;o)

Mvh
Avatar billede mikkel_strack Nybegynder
28. august 2006 - 22:21 #6
Svedsken har jeg nappet fra en bog såmænd :o)
Har ikke kigget på membershipmuligheder, men ku være jeg skulle.

Hvordan kan det være at den sidste du skriver gemmes i session? Eller mener du bare jeg skal gemme den i session?

Mikkel
Avatar billede snepnet Nybegynder
28. august 2006 - 22:41 #7
det bliver den heller ikke - men du kan bare lave en "sessionvariabel" ud af den:

public User SessionUser
{
  get{return Session["SessionUser] as User;}
  set{Session["SessionUser"] = value;}
}

Der er et fuldt implementeret brugerstyringssystem i ASP.NET 2.0, og desuden en mulighed for at udvide "brugerobjektet" ved at tilføje properties til deres profil (Profiles hedder systemet).

Mvh
Avatar billede mikkel_strack Nybegynder
28. august 2006 - 22:45 #8
Oki. Jeg vil kigge på det hele.

Takker for deltagelsen. Smid et svar du :o)
Avatar billede snepnet Nybegynder
28. august 2006 - 22:46 #9
Var så lidt :o)
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