---
title: "få fram data från databas..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/95735-få-fram-data-från-databas"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "dea"
published: "2004-01-26T10:00:18.000Z"
updated: "2004-01-27T06:40:42.000Z"
replies: 10
views: 490
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/95735-få-fram-data-från-databas"
---

# få fram data från databas...

## #1 — dea, 2004-01-26T10:00Z

skriver i: C# Asp.net

Jag har en sida där jag lägger ut namnen på alla medlemmar som finns i databasen. Jag lägger ut dem så här: 

```
string SQL = "SELECT FNamn + ' ' +ENamn as namn FROM Users ORDER BY ENamn";
SqlCommand com = new SqlCommand(SQL, con);

con.Open();
SqlDataReader dr = com.ExecuteReader();

while(dr.Read())
medlemmar.Text +="<a href='#'>"+(dr["namn"]).ToString()+"</a></ br>";		
dr.Close();
con.Close();
```

vidare vill jag klicka på varje medlem och få fram info om dessa. Informationen ligger i en databas under tabellen Users.

Hur gör jag detta på bästa sätt?

Och är mitt sätt att få fram mina medlemmar det smartaste sättet att göra det på? Eller finns det något annat sätt?

Permalänk: https://www.webforum.nu/p/95735

## #2 — NETwork, 2004-01-26T10:09Z

Undvik html i koden. Jag skulle lägga en linkbutton i en repeater istället och fylla på medlemmarna i den. Då har du en kontroll färdig att använda när du sedan vill plocka fram info om en medlem.

Permalänk: https://www.webforum.nu/p/1260990

## #3 — dea, 2004-01-26T12:18Z

men om jag nu vill skriva "ful kod", hur är bästa sättet att få fram datan för varje medlem?

Permalänk: https://www.webforum.nu/p/1261030

## #4 — icaaq, 2004-01-26T12:37Z

Om du ska skriva  *fulkod* så ta med ett id ur USERS tabellen och skicka med den som en QueryString.

```
[red]
string SQL = "SELECT id, FNamn + ' ' +ENamn as namn FROM Users ORDER BY ENamn";
SqlCommand com = new SqlCommand(SQL, con);

con.Open();
SqlDataReader dr = com.ExecuteReader();

while(dr.Read())
medlemmar.Text +="<a href='medlem.aspx?id="+(dr["id"]).ToString()+"'>"+(dr["namn"]).ToString()+"</a></ br>";		
dr.Close();
con.Close();
[/red]
```

Sedan i medlem.aspx så tar du querystringen som en referens i din SQL för att plocka ur datan för just den medlemmen.

Men detta är ju inte rekomendera. Då det finns lösningar i ASP.NET som är ljusår bättre.

mv icaaq

Permalänk: https://www.webforum.nu/p/1261036

## #5 — dea, 2004-01-26T14:03Z

Nu är det så, och jag kanske inte förklarade så bra, men jag har ska inte öppna en ny sida medlem för medlem utan det ska komma upp på samma sida som länkarna är på...

Permalänk: https://www.webforum.nu/p/1261064

## #6 — Pace, 2004-01-26T14:33Z

> **dea skrev:**
>
> men om jag nu vill skriva "ful kod"

Varför i hela friden vill du göra det? När du väl har ett kraftfullt språk vid fingerspetsarna är det väldigt dumt att inte utnyttja det! Vill du skriva fulkod bör du nog titta på asp eller php.

Permalänk: https://www.webforum.nu/p/1261087

## #7 — Qimen, 2004-01-26T14:37Z

> **Pace skrev:**
>
> > **dea skrev:**
> >
> > men om jag nu vill skriva "ful kod"
>
> 
> 
> Varför i hela friden vill du göra det? När du väl har ett kraftfullt språk vid fingerspetsarna är det väldigt dumt att inte utnyttja det! Vill du skriva fulkod bör du nog titta på asp eller php.

Jag förstår inte varför han skulle välja php om man vill skriva fulkod. :q

Permalänk: https://www.webforum.nu/p/1261090

## #8 — dea, 2004-01-26T14:55Z

> Page skrev:
> 
> Varför i hela friden vill du göra det? När du väl har ett kraftfullt språk vid fingerspetsarna är det väldigt dumt att inte utnyttja det! Vill du skriva fulkod bör du nog titta på asp eller php.

 
Bara för att jag inte har tid att ändra och sätta mig in i det just nu.

Permalänk: https://www.webforum.nu/p/1261104

## #9 — Pace, 2004-01-26T14:56Z

> **Qimen skrev:**
>
> Jag förstår inte varför han skulle välja php om man vill skriva fulkod. :q

För att det oftast blir så per automatik. Du kan skriva php och asp som efterapar objektorienterat, men det är knappast lika vanligt. Jag vill inte ha något språkkrig, det är det värsta jag vet.  :x

> **dea skrev:**
>
> Bara för att jag inte har tid att ändra och sätta mig in i det just nu.

Du kan se det från två perspektiv:

1\. Du lägger ned mycket tid i början på att lära dig.
2\. Du lägger ned mindre tid under arbetet.

Eller hardcode-style:

1\. Du lägger ned minimalt med tid på att lära dig.
2\. Du lägger ned väldigt mycket tid på att arbeta ineffektivt.

Välj språk efter förutsättningar.

Permalänk: https://www.webforum.nu/p/1261105

## #10 — Qimen, 2004-01-26T14:58Z

> **Pace skrev:**
>
> > **Qimen skrev:**
> >
> > Jag förstår inte varför han skulle välja php om man vill skriva fulkod. :q
>
> 
> För att det oftast blir så per automatik. Du kan skriva php och asp som efterapar objektorienterat, men det är knappast lika vanligt. Jag vill inte ha något språkkrig, det är det värsta jag vet.  :x

Alla som jobbar med php lite mer seriöst skriver allt i klasser och OO. Med tanke på att PHP5 kommer snart och php börjar bli alltmer OO så kan det bli ett mycket intressant språk.

Aja vi släpper detta, för denna gången iaf.  :p  §e

Permalänk: https://www.webforum.nu/p/1261108

## #11 — NETwork, 2004-01-27T06:40Z

> Bara för att jag inte har tid att ändra och sätta mig in i det just nu.

Det är inte speciellt komplicerat, snarare lättare än om du röjer runt med html i koden. :) Börja med en repeater och en linkbutton (pseudokod):

```
<asp:Repeater id="myR" Runat="server">
  <ItemTemplate>
    <asp:LinkButton CommandArgument='<%# DataBinder.Eval(Container, "DataItem.ID") %>' Text='<%# DataBinder.Eval(Container, "DataItem.Name") %>' OnClick="myLB_Click"  Runat="server"></asp:LinkButton>
    </br>
  </ItemTemplate>
</asp:Repeater>
```

Nu ska du fylla din repeater. Som icaaq skrev så är det bra om du även hämtar ett id från users, namnet är ingen bra nyckel. Detta id lägger du som ett *commandargument* som du sedan använder för att hämta medlemsdata i funktionen kopplad till din linkbutton. Funktionen när du klickar på din linkbutton ser då ut nåt i den här stilen:

```
protected void myLB_Click(object sender, System.EventArgs e) {
  int ID = myLB.CommandArgument;
  // hämta medlemsdata med hjälp av ID:t ovan
}
```

Permalänk: https://www.webforum.nu/p/1261429

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/95735-få-fram-data-från-databas
