Я хотел бы знать, если час времени между 2 часами. теперь я сохраняю дату и время таким образом:
var resultsDate = DateTime.Now;
и чтобы выбрать часы и минуты, которые я хочу проверить, я показываю диалог, показывающий пользователю, который выбирает время, и я сохраняю часы и минуты как строка таким образом (я сохраняю 2 из них):
selectedTime.ToString("HH:mm", System.Globalization.CultureInfo.InvariantCulture)
, а затем, если дата находится между 2 часами и минутами, я проверяю это таким образом:
var getTimeRangeFrom1 = System.Text.RegularExpressions.Regex.Split(timeRangeFrom1, ":");
var getTimeRangeTo1 = System.Text.RegularExpressions.Regex.Split(timeRangeTo1, ":");
int RangeFrom1Hours = 0;
if (!Int32.TryParse(getTimeRangeFrom1[0], out RangeFrom1Hours))
RangeFrom1Hours = 0;
int RangeFrom1Minutes = 0;
if (!Int32.TryParse(getTimeRangeFrom1[1], out RangeFrom1Minutes))
RangeFrom1Minutes = 0;
int RangeTo1Hours = 23;
if (!Int32.TryParse(getTimeRangeTo1[0], out RangeTo1Hours))
RangeTo1Hours = 23;
int RangeTo1Minutes = 59;
if (!Int32.TryParse(getTimeRangeTo1[1], out RangeTo1Minutes))
RangeTo1Minutes = 59;
x.Date.Hour >= RangeFrom1Hours && x.Date.Hour <= RangeTo1Hours && x.Date.Minute >= RangeFrom1Minutes && x.Date.Minute <= RangeTo1Minutes
Где RangeFrom1Hours & timeRangeTo1 - это что-то вроде «ЧЧ: мм», но я получаю разные результаты для разных временных культур.
Должен ли я прекратить преобразовывать время в строку и проверить его другим способом?