Avatar billede starf Nybegynder
02. maj 2006 - 14:58 Der er 10 kommentarer og
1 løsning

funktion der tjekker label om samme værdi er i db

Hej

jeg har brug for en funktion som tjekker om samme værdi er i min db, som er i et lavel i mit program. Jeg har forsøgt med følgende måde men det virker ik rigtigt:

public void getprogver(string progver)
       
        {
            //henter data
            MySqlConnection myConn = new MySqlConnection(getDatabaseDNS());


            string strSQL = "SELECT * FROM prog WHERE id=1";
            MySqlDataAdapter myCmd = new MySqlDataAdapter(strSQL, myConn);
           
            myConn.Open();
            DataSet dtSet = new DataSet();
            myCmd.Fill(dtSet, "prog");
            DataTable dTable = dtSet.Tables[0];
            foreach (DataRow dtRow in dTable.Rows)
            {
                //Fyld felter med det valgte
                progver = dtRow["ver"].ToString();
               
               
            }
            if (lbl_progver.Text == progver)
            {
                MessageBox.Show("You have the must Current Version");
            }

            else
            {
MessageBox.Show("Your version is not up to date"}

            myConn.Close();

}

men når jeg så laver en knap til at kalde den fra får jeg bare:

Error    1    No overload for method 'getprogver' takes '0' arguments    C:\Documents and Settings\Mads Sigvert\Dokumenter\Visual Studio 2005\Projects\New Ordre\New Ordre\WindowsApplication1\Form1.cs    1838    13    Novatech Add New Ordre


kalder den med:

getprogver();

nogle der kan sige hva jeg gør galt, og hvordna jeg evt gør dette?
Avatar billede dr_chaos Nybegynder
02. maj 2006 - 15:10 #1
public void getprogver()
     
        {
string progver;
            //henter data
            MySqlConnection myConn = new MySqlConnection(getDatabaseDNS());


            string strSQL = "SELECT * FROM prog WHERE id=1";
            MySqlDataAdapter myCmd = new MySqlDataAdapter(strSQL, myConn);
         
            myConn.Open();
            DataSet dtSet = new DataSet();
            myCmd.Fill(dtSet, "prog");
            DataTable dTable = dtSet.Tables[0];
            foreach (DataRow dtRow in dTable.Rows)
            {
                //Fyld felter med det valgte
                progver = dtRow["ver"].ToString();
             
             
            }
            if (lbl_progver.Text == progver)
            {
                MessageBox.Show("You have the must Current Version");
            }

            else
            {
MessageBox.Show("Your version is not up to date"}

            myConn.Close();

}
Avatar billede dr_chaos Nybegynder
02. maj 2006 - 15:12 #2
Det er fordi du bruger :public void getprogver(string progver)

i det tilfælde du vil kalde den skal du bruge
getprogver("");
ellers skal du ændre funktionen til den som jeg har postet oppe over her.
Avatar billede starf Nybegynder
02. maj 2006 - 15:14 #3
ved din der får jeg en:

Error    1    Use of unassigned local variable 'progver'    C:\Documents and Settings\Mads Sigvert\Dokumenter\Visual Studio 2005\Projects\New Ordre\New Ordre\WindowsApplication1\Form1.cs    969    37    Novatech Add New Ordre
Avatar billede starf Nybegynder
02. maj 2006 - 15:16 #4
ved denne her:

if (lbl_progver.Text == progver)
Avatar billede dr_chaos Nybegynder
02. maj 2006 - 15:16 #5
public void getprogver()
   
        {
string progver= "";
            //henter data
            MySqlConnection myConn = new MySqlConnection(getDatabaseDNS());


            string strSQL = "SELECT * FROM prog WHERE id=1";
            MySqlDataAdapter myCmd = new MySqlDataAdapter(strSQL, myConn);
       
            myConn.Open();
            DataSet dtSet = new DataSet();
            myCmd.Fill(dtSet, "prog");
            DataTable dTable = dtSet.Tables[0];
            foreach (DataRow dtRow in dTable.Rows)
            {
                //Fyld felter med det valgte
                progver = dtRow["ver"].ToString();
           
           
            }
            if (lbl_progver.Text == progver)
            {
                MessageBox.Show("You have the must Current Version");
            }

            else
            {
MessageBox.Show("Your version is not up to date"}

            myConn.Close();

}
Avatar billede starf Nybegynder
02. maj 2006 - 15:22 #6
ok nu før jeg ingen fejl.. men får dog hele tiden "Your version is not up to date"

selv om samme værdi er i min db som i det label ?
Avatar billede dr_chaos Nybegynder
02. maj 2006 - 15:25 #7
prøv med MessageBox.Show(lbl_progver.Text +","+progver);
over din if sætning
Avatar billede starf Nybegynder
02. maj 2006 - 15:29 #8
får:

Ver:1.2.1,1.2.1

som output
Avatar billede starf Nybegynder
02. maj 2006 - 15:31 #9
glem det, det er mig der er dum det virker fint nu:) smid et svar
Avatar billede dr_chaos Nybegynder
02. maj 2006 - 17:31 #10
svar :)
Avatar billede dr_chaos Nybegynder
02. maj 2006 - 17:32 #11
doh prøver lige igen
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