4

我正在使用从 .csv 文件中读取的数据来参数化我的测试用例。csv 文件中的一列具有美国格式的简单日期值(作为常规字符串),例如mm/dd/yyyy. 但是,当实际读取数据并将其填充到 aTestContext中时,TestContext.DataRow["MyDateColumn"]实际上会返回一个转换后的System.DateTime对象,并带有时间戳12:00:00 AM。我绝对不需要也不想要这种自动转换。我该如何阻止这种情况发生?

4

4 回答 4

2

如果 MyDateColumn 的类型设置为 datetime,那么它将/应该返回一个 datetime 对象。

尝试将 MyDateColumn 的类型更改为字符串,看看是否可以解决问题。

更新

更改 CSV 中的日期,使其为“mm/dd/yyyy”而不是 mm/dd/yyyy。

于 2011-03-04T13:36:05.283 回答
0
DateTime.Parse(TestContext.DataRow["MyDateColumn"], CultureInfo.InvariantCulture).ToShortDateString()
于 2011-03-04T12:09:56.957 回答
0

我得到了解决方案:)

我只是把 ' 放在实际数据之前。当我检索数据时,数据按原样出现。在使用它之前,我使用 substring 方法从数据中删除 '。

我记得在 excel 上使用这种技术使数字显示为文本。它对我有用。

于 2015-02-12T21:33:43.313 回答
0

我在数据周围放了双引号。这会返回字符串,而不会删除引号。

columnInt, columnString
1, "11.12.89"  
2, "12.12.89"
于 2020-07-29T18:07:40.487 回答