Есть ли способ конвертировать дату чтения из файла JSON? Примерная запись из моего файла:
{
"UserID": 73274,
"Created": "17-03-2018 06:35",
"Office": "Washington"
},
Я занимаюсь импортом файла JSON и сохранением его содержимого в базе данных. Проблема в том, что когда дата в формате DD-MM-YYYY hh:ss
, она просто не работает. Но когда дата в формате YYYY-MM-DDThh:mm:ss
, все в порядке. Как разобрать дату в другом формате после прочтения этого файла и выполнить следующие операции с файлом с проанализированной датой?
Часть моего контроллера, ответственного за эти операции:
if (file.ContentType == "application/json")
{
try
{
using (var reader = new StreamReader(file.OpenReadStream()))
{
content = reader.ReadToEnd();
}
}
catch
{
return BadRequest(Messages.fileNotChosen);
}
try
{
userObjects = JsonConvert.DeserializeObject<List<UserImportModel>>(content);
}
catch
{
return BadRequest();
}
}
Когда формат даты YYYY-MM-DDThh:mm:ss
, userObjects правильно подсчитывается, и контроллер перемещается в часть, где я выполняю добавление в базу данных. Когда формат даты DD-MM-YYYY hh:ss
, userObjects = 0 и контроллер переходит к перехвату, который затем возвращает BadRequest ().
РЕДАКТИРОВАТЬ: код UserImportModel
класс:
public class UserImportModel
{
public string UserID { get; set; }
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime Created { get; set; }
public string Office { get; set; }
}