Avatar billede fun22 Nybegynder
09. september 2007 - 19:58 Der er 9 kommentarer og
1 løsning

SQLDataSource og User.Identity.Name

Hej

Hvordan bruger jeg User.Identity.Name sammen med en SQLDataSource?

Jeg har en tabel med en kolonne som hedder "Owner".

Der vil jeg så gerne hente alle de poster hvor "Owner" er lig med User.Identity.Name..

Men det kan jeg ikke lige gennemskue..
Avatar billede neoman Novice
10. september 2007 - 20:58 #1
Hvad er du egentligt i tvivl om ? Det er nok nemmest at besvare specifikke spørgsmål.
Avatar billede fun22 Nybegynder
10. september 2007 - 21:53 #2
I det alm. ASP kunne man bruge SQL = "SELECT * FROM tabel WHERE user = '" & Session("user") & "'"

Hvordan bruger man så det sammen med en SqlDataSource?

Man kan jo vælge forskellige funktioner under "Where" funktionen i opsætningen, men man kan ikke vælge at den skal bruge User.Identity.Name..

Ved ikke om det gav mere mening??
Avatar billede neoman Novice
10. september 2007 - 22:02 #3
Kig bare her: http://www.eksperten.dk/spm/795595

Når du laver en SqlDataSource, så kan du i wizarden (i designeren) sige at der er en værdi som optræder som parameter, og angive hvor den skal hente værdien, f.eks. i en Control på siden. Denne kunne være en TextBox, i hvilken du f.eks. har lagt værdien af User.Identity.name. Hvis du skal hente en værdi fra session , så kan man også det i wizarden - den har en 4-5 muligheder - check it out.
Avatar billede neoman Novice
10. september 2007 - 22:07 #4
der hvor du kommer til WHERE skal du bare vælge en CONTROL i SOURCE dropdownlisten (eller SESSION) og så spø'r den om navnet på kontrollen (parameteren)
Avatar billede fun22 Nybegynder
10. september 2007 - 22:46 #5
Ja men det vil så sige at det ikke kan lade sig gøre direkte.. Man skal have det ned i en textbox først og så hive det ind?
Avatar billede neoman Novice
10. september 2007 - 23:00 #6
njah ... sagen er at man skal bruge en PARAMETER. Wizarden tilbyder dig nogle optioner - og det er det nemmeste.

Men, i code-behind, kan du lave en SqlParameter og give den værdien af en eller anden variabel - User.Identity.name .

Noget i stil med:

            SqlDataSource1.SelectParameters.Add("Userid", String, User.Identity.Name)
kan ikke helt huske syntaxen - du må lege lidt med det og kigge på IntelliSense
Avatar billede azcii Nybegynder
11. september 2007 - 13:30 #7
Okay jeg tror stadig jeg er lidt lost.

I Toppen af koden har jeg:
<script runat="server">
    Sub sendReg(ByVal sender As Object, ByVal e As System.EventArgs)
        CreatUser.Insert()
        ?? ---> SqlDataSource.InsertParameters.Add("dateTime", DateTime.Now)
    End Sub
</script>

Kan man noget i den retning så man kan bruge den direkte i InsertCommand?
Avatar billede azcii Nybegynder
11. september 2007 - 13:30 #8
sry, det var forkert postet.
Avatar billede fun22 Nybegynder
17. september 2007 - 19:25 #9
Okay super.. Smider du lige et svar?
Avatar billede neoman Novice
17. september 2007 - 19:39 #10
svar
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