Попробуйте использовать DateTimeOffset.Parse
. Затем используйте AddDays
или AddHours
.
Важно использовать DateTimeOffset вместо DateTime, если вы хотите сохранить то же смещение часового пояса, которое вы проанализировали.
var dateTimeOffset = DateTimeOffset.Parse("1999-05-31T13:20:00.000-05:00");
var newDateTimeOffset = dateTimeOffset.AddHours(1);
var newDateTimeString = newDateTimeOffset.ToString("O");
если вам не нравится формат "O", вы можете использовать это:
var newDateTimeString = newDateTimeOffset.ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffK")
Это будет на 100% соответствовать вашему формату.