日期时间格式错误

本文关键字:错误 格式 时间 日期 | 更新日期: 2023-09-27 18:37:05

我收到异常错误,"输入字符串格式不正确。"确保你的方法参数格式正确。将字符串转换为 DateTime 时,在将每个变量放入 DateTime 对象之前,解析字符串以获取日期"。

它指向此代码的最后一行:

cnaIntakeVSOutputDetail_Intake.Add(new IntakeVsOutput(
facility,
UnitRepository.Units(facility).SingleOrDefault(u => u.Code.Equals(reader.To("UNIT_CODE", ""))),
new Patient()
{
     Account = reader.To("PATIENT_ID", ""),
     MRN = reader.To("MRN", ""),
     Name = reader.To("NAME_FULL", ""),
     Room = reader.To("ROOM_BED", ""),
 },
     reader.To("INFO", ""),
     Convert.ToDateTime(reader["TRDATE"]),
     Convert.ToInt32(reader["MENU_ID"]),
     Convert.ToInt32(reader["VALUE"]),
     null, null, null));

日期时间格式错误

>reader["TRDATE"]不包含Convert.ToDateTime可以转换为DateTime值的字符串。

这可能是因为它是一个空字符串或DBNull.Valuenull

try DateTime.TryParse instade:

string dateString;
 DateTime dateValue;
 DateTime.TryParse(dateString, out dateValue);

首先,您需要确保 TRDATE 列包含值,否则它将触发错误输入格式不正确。 为此,您可以使用

字符串。IsNullorEmpty(reader["TRDATE"].ToString())

方法,然后您需要解析其他明智的值设置默认值或将其保留为 null 以返回类型。