webForumDet fria alternativet

Hur skriver jag ut???

.NET

9 svar · 304 visningar · startad av Annelie_82

Medlem sedan okt. 200221 inlägg
Frågan#1

Jag har en sida där man ska kunna söka på olika krogar. Det finns sex dropdownlist där man kan söka på t ex genre, evenmang, utbud m.m. När man klickat i det som man vill ha, ska dessa värden jämföras med värden i min databas och om det finns en eller flera krogar som stämmer in på det man har sökt så ska den skriva ut krogens namn. Jag undrar nu hur jag ska kunna skriva ut korgens namn... det jag skrivit funkar inte.

såhär ser en av mina dropdownlist ut:

<asp:dropdownlist id="UtbudList" Runat="server" Width="100">
<asp:ListItem>- Sök - </asp:ListItem>
<asp:ListItem>Öl</asp:ListItem>
<asp:ListItem>Vin</asp:ListItem>
<asp:ListItem>Kvällens drink</asp:ListItem>
<asp:ListItem>Happy Hour</asp:ListItem>
</asp:dropdownlist>

i min cs fil har jag följande kod:

private void submit_Click(object sender, System.EventArgs e)
{
String varGenre = GenreList.SelectedItem.Value;
String varAlder = AlderList.SelectedItem.Value;
String varAtmosfar = AtmosfarList.SelectedItem.Value;
String varUtbud = UtbudList.SelectedItem.Value;
String varEvenemang = EvenemangList.SelectedItem.Value;
String varKladsel = KladselList.SelectedItem.Value;

String myConn ="Provider=Microsoft.JET.OLEDB.4.0;Data Source=C:/Inetpub/wwwroot/sthlmskrogar1/sthlmkrog.mdb;";
OleDbConnection cn = new OleDbConnection(myConn);
cn.Open();

String strSQL = "SELECT KrogNamn FROM search WHERE Genre ='" + varGenre + "' Alder ='" + varAlder +"' Atmosfar = '" + varAtmosfar + "' Utbud = '" + varUtbud + "' Evenemang = '" + varEvenemang + "' Kladsel = '" + varKladsel+"' +";

OleDbCommand cmd = new OleDbCommand(strSQL, cn);

cmd.Container.Add(cmd); // vet ej om denna rad stämmer...
cn.Close();

}

För att kunna skriva ut krogens namn har jag följande kod i aspx filen :

<asp:Repeater id="VisaLista" runat="server">
<ItemTemplate>
<%# Container.DataItem(KrogNamn) %>
</ItemTemplate>
</asp:Repeater>

Det den klagar på är:

<%# Container.DataItem(KrogNamn) %>

den säger:
"Namnet KrogNamn finns inte i klassen eller namnområdet "

Finns det någon som kan hjälpa mig med detta? Eller finns det något annat sätt man kan göra det på?

Medlem sedan jan. 20011 140 inlägg
#2

Det ska vara "" runt fältnamnet

<%# Container.DataItem("KrogNamn") %>
Medlem sedan okt. 200221 inlägg
#3

Har försökt med det oxå..
men då får jag detta felmeddelande:
"CS0118: System.Web.UI.WebControls.RepeaterItem.DataItem anger egenskap där metod förväntas"

Medlem sedan jan. 20011 140 inlägg
#4

Prova med

<%# DataBinder.Eval(Container, "DataItem.krognamn") %>
Medlem sedan okt. 200221 inlägg
#5

Tack! Nu får jag inga flemeddelanden eller liknande, men den skriver inte ut ngt =(

Medlem sedan jan. 20011 140 inlägg
#6

Du måste binda din data till repeatern också.

String varGenre = GenreList.SelectedItem.Value; 
String varAlder = AlderList.SelectedItem.Value; 
String varAtmosfar = AtmosfarList.SelectedItem.Value; 
String varUtbud = UtbudList.SelectedItem.Value; 
String varEvenemang = EvenemangList.SelectedItem.Value; 
String varKladsel = KladselList.SelectedItem.Value;

repeater visaLista; 

String myConn ="Provider=Microsoft.JET.OLEDB.4.0;Data Source=C:/Inetpub/wwwroot/sthlmskrogar1/sthlmkrog.mdb;"; 
OleDbConnection cn = new OleDbConnection(myConn); 
cn.Open(); 

String strSQL = "SELECT KrogNamn FROM search WHERE Genre ='" + varGenre + "' Alder ='" + varAlder +"' Atmosfar = '" + varAtmosfar + "' Utbud = '" + varUtbud + "' Evenemang = '" + varEvenemang + "' Kladsel = '" + varKladsel+"' +"; 

OleDbCommand cmd = new OleDbCommand(strSQL, cn); 

cmd.Container.Add(cmd); // vet ej om denna rad stämmer... 
cn.Close(); 

DataSet ds = new DataSet();
cmd.Fill(ds, "krogar");

VisaLista.DataSource = ds.Tables["krogar"].DefaultView;
VisaLista.DataBind();
cn.close();

Är inte säker på att den här koden är rätt. Kan inte c#

Medlem sedan okt. 200221 inlägg
#7

Tack! Nu funkar det.. men nu har jag fått andra problem att lösa ;)
Men tack så jätte mycket för hjälpen, tack tack!

Medlem sedan jan. 20011 140 inlägg
#8

Varsågod och Välkommen till wf :)

Medlem sedan mars 20023 561 inlägg
#9

Blir lättare att läsa koden om du använder [kod]-taggarna.

Välkommen till wF! :bire

Medlem sedan okt. 200221 inlägg
#10

Ok, tack =) Då vet jag det till nästa gång jag behöver hjälp.

268 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)