Jeg har prøvet det eksempel du kom med og nu ser min kode sådan ud:
public static DateTime metoden(int klientid) { string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Ole DB Services=-4; Data Source=C:\\Inetpub\\wwwroot\\web\\db1.mdb";
System.Data.IDbConnection dbConnection = new System.Data.OleDb.OleDbConnection(connectionString); string queryString = "SELECT [Klient].[Henvisningsdato] FROM [Klient] WHERE ([Klient].[KlientID] = @KlientID)";
I din kode angiver du at du ønsker at bruge parameteren @KlientID, men du opretter den ikke nogen steder, og du binder den hellere ikke til nogen værdi.
string queryString = "SELECT [Klient].[Henvisningsdato] FROM [Klient] WHERE ([Klient].[KlientID] = @KlientID)";
- så kaldes det for en "parameter".
Din funktion tager et argument, "klientid", og for at dette skal indsættes på "@KlientID" pladsen, skal variablen klientid "bindes" til parameteren @KlientID. Du mangler de to linjer i din kode som gør dette, og det er det din fejlbesked påpeger.
Sådan her:
public static DateTime metoden(int klientid) { string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Ole DB Services=-4; Data Source=C:\\Inetpub\\wwwroot\\web\\db1.mdb";
System.Data.OleDb.OleDbConnection dbConnection = new System.Data.OleDb.OleDbConnection(connectionString); string queryString = "SELECT [Klient].[Henvisningsdato] FROM [Klient] WHERE ([Klient].[KlientID] = @KlientID)";
// Disse to linjer manglede: dbCommand.Parameters.Add("@KlientID", System.Data.OleDb.OleDbType.Integer); dbCommand.Parameters["@KlientID"].Value = klientid;
Læg i øvrigt mærke til at jeg har ændret din IDbConnection til en OleDbConnection og din IDbCommand til en OleDbCommand. Interfasene har deres berettigelse, det er bare ikke her.
Hvis du importere namespacet "System.Data.OleDb" kan du i øvrigt simplificere koden til:
public static DateTime metoden(int klientid) { string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Ole DB Services=-4; Data Source=C:\\Inetpub\\wwwroot\\web\\db1.mdb";
OleDbConnection dbConnection = new OleDbConnection(connectionString); string queryString = "SELECT [Klient].[Henvisningsdato] FROM [Klient] WHERE ([Klient].[KlientID] = @KlientID)";
Yes, nu virker metoden, nu har jeg bare problemer med at få den sat ind i min kalender, hvor jeg skriver koden neden under og når jeg skriver den, så kommer der ingen fejl, men der sker heller ikke noget i kalenderen, den står bare på dags dato og så har jeg prøvet, at skrive den ud til en textbox og der skriver den den dato, som det skal være, men bare ikke i kalenderen?:
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.