public String GenPaymentReference() { Boolean bPayRef = false; int no = 0;
DataTable dt = new DataTable();
for (int i = 0; i < 10; i++) { Random random = new Random(10); no = random.Next(0,999999); dt = new ExpandITDK.Data.Sql.SqlConn().GetDataTableFromSql("SELECT * FROM AccountPaymentTemp WHERE PaymentReference = " + no + " "); if (dt.Rows.Count == 0) { dt = new ExpandITDK.Data.Sql.SqlConn().GetDataTableFromSql("SELECT * FROM AccountPayment WHERE PaymentReference = " + no + " "); if (dt.Rows.Count == 0) { bPayRef = true; break; } } }
// Return the value or the error message "PayRefErr" if (bPayRef) { return no.ToString(); } else { throw new Exception("Unable to create a new payment reference. Please contact the site administrator."); } }
vi løste det, med en toString()...
Men det kan da ikke være rigtig at vi ikke kan returne en float, med 2 decimaler, uden at den selv fylder 6 decimaler mere på.
En float kan ikke altid repræsenteres præcist med 2 decimaler. 2½ kan, men 2 + 1/3 kan ikke. Man plejer derfor at runde af i udskriften. Kig på String.Format - vistnok.
K, arne_v ... Siden du har svaret på noget database spørgsmål, vil du så have pointne, ellers vil jeg selv tage dem, så jeg kan få lukket sp.
//dl
Synes godt om
Ny brugerNybegynder
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.