Jeg har denne: SqlParameter[] parm = new SqlParameter[3];
parm[0] = new SqlParameter("@parmSalgsted", Salgsted); parm[1] = new SqlParameter("@parmStartNr", StartNr); parm[2] = new SqlParameter("@parmSlutNr", SlutNr);
Den DataSet objekt ds, som du får tilbage må da indeholde en eller flere DataTabel objekter, med resultatet, derfor kan da godt bruge denne metode. Ellers må du uddybbe det her meget mere.
DataGrid bruges til at vise data som du f.eks har i en DataSet objekt:
SqlParameter[] parm = new SqlParameter[3];
parm[0] = new SqlParameter("@parmSalgsted", Salgsted); parm[1] = new SqlParameter("@parmStartNr", StartNr); parm[2] = new SqlParameter("@parmSlutNr", SlutNr);
DataTable dt = ds.Tables["NavnetPåDenSeulterendeTabel"]; int sum = 0; foreach (DataRow dr in dt.Rows) { int val = dr["NavnetPåDinKolonne"]; sum += val; }
Jeg har ikke rodet så meget med Stored Procedures, men jeg gætter på at den resulterende tabel muligvis hedder "getAllIndbetalinger", lige som din Stored Procedure gør, ellers kan du hente den ved hjælp af indexering:
Jeg har prøvet at køre den nu, men får en fejlmeddelelse:
Object reference not set to an instance of an object.
Line 62: DataTable dt = ds.Tables["getAllIndbetalinger"]; Line 63: int sum = 0; Line 64: foreach (DataRow dr in dt.Rows) Line 65: { Line 66: int val = (int)dr["Belob"];
Og der er så fejl i linie 64 - altså denne: foreach (DataRow dr in dt.Rows)
Kender du til breakpoints? Ellers er der en lille smule om det her. Hjælper når man skal teste sin kode, eller bare se om den opfører sig ordentligt...
Specified cast is not valid. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidCastException: Specified cast is not valid.
Source Error:
Line 65: foreach (DataRow dr in dt.Rows) Line 66: { Line 67: int val = (int)dr["Belob"]; Line 68: sum += val; Line 69: Label4.Text = sum.ToString();
for(int i = 0; i < dt.Rows.Count; i++) { int val = (int)dt.Rows[i].Value // ved ikke om det er value eller hvad det er - sidder og koder i hånden sum += val; Label4.Text = sum.ToString(); }
Jeg brugte denne her: int val = (int)dt.Rows[i].RowState;
Og så giver beløbet 30, men det skulle give lidt over 1000. Vidste heller ikke lige, hvad den gjorde. :-) Men det er jo nok derhen af, det du har givet mig. Du har vel ikke et gæt på noget andet ?
Specified cast is not valid. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidCastException: Specified cast is not valid.
Source Error:
Line 67: for(int i = 0; i < dt.Rows.Count; i++) Line 68: { Line 69: int val = (int)dt.Rows[i].ItemArray[0]; Line 70: sum += val; Line 71: Label4.Text = sum.ToString();
Det er ikke en cast -- Er du sikker på at det er den linie? Det er en Parse.
Hele koden:
SqlParameter[] parm = new SqlParameter[3];
parm[0] = new SqlParameter("@parmSalgsted", Salgsted); parm[1] = new SqlParameter("@parmStartNr", StartNr); parm[2] = new SqlParameter("@parmSlutNr", SlutNr);
parm[0] = new SqlParameter("@parmSalgsted", Salgsted); parm[1] = new SqlParameter("@parmStartNr", StartNr); parm[2] = new SqlParameter("@parmSlutNr", SlutNr);
Ok har fundet frum til en løsning, som burde virke:
SqlParameter[] parm = new SqlParameter[3];
parm[0] = new SqlParameter("@parmSalgsted", Salgsted); parm[1] = new SqlParameter("@parmStartNr", StartNr); parm[2] = new SqlParameter("@parmSlutNr", SlutNr);
DataTable dt = ds.Tables[0]; int sum = 0; for (int i=0;i<dt.Rows.Count;i++) { int val = (int)dt.Rows[i]["Belob"]; sum += val; } Label4.Text = sum.ToString();
Specified cast is not valid. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidCastException: Specified cast is not valid.
Source Error:
Line 62: for (int i=0;i<dt.Rows.Count;i++) Line 63: { Line 64: int val = (int)dt.Rows[i]["Belob"]; Line 65: sum += val; Line 66: }
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.