Изменить формат времени в DateTime
Всем привет.
Для записей создаю дату. С фронта приходит unixdate
На беке я эти принимаю вот так :
DateTime d = DateTimeOffset.FromUnixTimeMilliseconds(request.CreateDate).DateTime.ToLocalTime();
var utc = DateTime.SpecifyKind(d, DateTimeKind.Utc);
На выходе переменная utc имеет вид : 2022-08-09T14:22:27.211Z А нужно ДД.ММ.ГГГГ ЧЧ:ММ:СС Если сделать utc.toString, то на выходе получаю именно то что надо. Но строку. А мне нужен DateTime. Как можно это сделать без перевода в строку ?
Пробовал так , но не получается
var format = "dd.MM.yyyy hh:mm:ss";
var testString = utc.ToString();
DateTime dt;
DateTime.TryParseExact(utc.ToString(),
format,
null,
DateTimeStyles.None,
out dt);
Handler в котором обрабатываются данные и возращаются на бек:
public class CreateItemBlackListHandler : IRequestHandler<CreateItemBlackListCommand, Result<BlackListEntity>>
{
readonly IRepository<BlackListEntity> _repository;
public CreateItemBlackListHandler(
IRepository<BlackListEntity> repository)
{
_repository = repository;
}
public Task<Result<BlackListEntity>> Handle(CreateItemBlackListCommand request, CancellationToken cancellationToken)
{
DateTime parsedDate;
DateTime d = DateTimeOffset.FromUnixTimeMilliseconds(request.CreateDate).DateTime;
var utc = DateTime.SpecifyKind(d, DateTimeKind.Utc);
var result = _repository.CreateAsync(new BlackListEntity()
{
Id = request.ItemId,
LastName = request.LastName,
FirstName = request.FirstName,
MiddleName = request.MiddleName,
CreateDate = utc,
PhoneNumber = request.PhoneNumber,
}, cancellationToken);
return result;
}
}