0
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;

在最后一行我有 value GLHdr.TRXDATE: "15-02-2017"

我收到格式异常。让我知道我在哪里做错了。

4

1 回答 1

3

GLHdr.TRXDATE是一个字符串,而不是一个DateTime

DateTime在传递它之前,您需要将其解析为:

var dt = DateTime.Parse(GLHdr.TRXDATE);
myCommand1.Parameters.Add("@I_vTRXDATE", SqlDbType.DateTime).Value = dt;

注意DateTime.Parse 可以失败,so ParseExactor TryParseExactthat也取一个格式字符串可能更适合你的具体情况。

于 2012-05-27T07:30:29.903 回答