我使用从.csv文件读取的数据来参数化我的测试用例。csv文件中的一列包含美国格式的简单日期值(作为常规字符串),例如mm/dd/yyyy。但是,当实际读取数据并将其填充到TestContext中时,TestContext.DataRow["MyDateColumn"]实际上会返回一个转换后的System.DateTime对象,并带有时间戳12:00:00 AM。我绝对不需要或不想要这个自动转换。我如何阻止这种情况的发生?
发布于 2011-03-04 21:36:05
如果MyDateColumn的类型设置为datetime,那么它将/应该返回一个datetime对象。
尝试将MyDateColumn的类型更改为string,看看这样做是否有效。
更新
将CSV中的日期更改为" mm/dd/yyyy“,而不是mm/dd/yyyy。
发布于 2011-03-04 20:09:57
DateTime.Parse(TestContext.DataRow["MyDateColumn"], CultureInfo.InvariantCulture).ToShortDateString()发布于 2015-02-13 05:33:43
我对此有解决方案:)
我只是把‘放在实际数据之前。当我检索数据时,数据是原样的。在使用它之前,我使用substring方法从数据中删除了‘。
我记得在excel上使用这种技术使数字显示为文本。这对我很管用。
https://stackoverflow.com/questions/5193401
复制相似问题