myCommand1.Parameters.Add("@I_vBACHNUMB", SqlDbType.Char).Value = GLHdr.BACHNUMB;
myCommand1.Parameters.Add("@I_vREFRENCE", SqlDbType.Char).Value = "ExcelImport";
myCommand1.Parameters.Add("@I_vTRXDATE", SqlDbType.DateTime).Value = GLHdr.TRXDATE;
W ostatniej linii mam wartość GLHdr.TRXDATE: "15-02-2017"
.
Otrzymuję wyjątek formatu. Daj mi znać, gdzie robię błąd.
Odpowiedzi:
3 dla odpowiedzi № 1GLHdr.TRXDATE
jest strunowynie a DateTime
.
Musisz go przeanalizować w DateTime
przed przekazaniem go:
var dt = DateTime.Parse(GLHdr.TRXDATE);
myCommand1.Parameters.Add("@I_vTRXDATE", SqlDbType.DateTime).Value = dt;
Zauważ, że DateTime.Parse
mogą nie, tak ParseExact
lub TryParseExact
które również przyjmują ciąg formatujący mogą być bardziej odpowiednie dla określonych okoliczności.