Avatar billede hyperactive Nybegynder
26. juli 2003 - 13:10 Der er 3 kommentarer og
1 løsning

Tjekke om datareader returnerer 0 rækker

Jeg har følgende kode, som jeg benytter i en C# webapplikation:

            SqlConnection dbConnection = new SqlConnection("Server=XXX;Database=XXX;UID=XXX;PWD=XXX");
            string SqlSelectColours;
            SqlSelectColours = "SELECT DISTINCT dbo.ProductSKUs.Colour, dbo.Colours.ColourName FROM Colours INNER JOIN ProductSKUs ON dbo.Colours.ColourID = dbo.ProductSKUs.Colour WHERE ProductID=" + Request["ProductID"];
            SqlCommand commandSelectColours = new SqlCommand(SqlSelectColours, dbConnection);
            dbConnection.Open();
            SqlDataReader dataReaderColours = commandSelectColours.ExecuteReader();
            ddlColours.DataSource = dataReaderColours;
            ddlColours.DataTextField = "ColourName";
            ddlColours.DataValueField = "Colour";
            ddlColours.DataBind();
            dbConnection.Close();
            dataReaderColours.Close();

ddlColours er en <asp:DropDownList> som altså tildeles værdier fra databasen...

Jeg vil gerne have ændret koden, således at DropDownListen skjules, hvis datareaderen ikke returnerer nogle rækker... Hvordan gør jeg det?
Avatar billede cbp Nybegynder
26. juli 2003 - 13:30 #1
Det kommer an på om du bruger 1.0 eller 1.1. I 1.1 har datareaderen fået en hasrows-property som returnerer true hvis der er resultater i datareaderen.

I begge versioner kan du aflæse efter du har kaldt databind på dropdownlisten tjekke om der er elementer i listen og ellers skjule den. Her skal du bruge ddlColurs.Items.Count.
Avatar billede hyperactive Nybegynder
26. juli 2003 - 13:35 #2
Kan du give et kode eksempel... og hvor ser jeg versionen???
Avatar billede cbp Nybegynder
26. juli 2003 - 13:43 #3
if (ddlColours.Items.Count == 0)
  ddlColours.Visible = false;
Avatar billede hyperactive Nybegynder
26. juli 2003 - 13:50 #4
Super... Tak for hjælpen :o)
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