Я использовал две строки: одну для сегодняшней даты и одну для базы данных, которая является датой регистрации пользователей. Я хочу преобразовать эти две строки в солнечную дату и сравнить их.
Этот код работает хорошо, и я правильно преобразовал первую переменную, и я могу сравнить ее.
PersianDateTime now = PersianDateTime.Now;
string s = now.ToString("yyyy/MM/dd");
PersianDateTime persianDate = PersianDateTime.Parse(s);
Но этот код выдает ошибку, потому что становится условием
var ActivitysNotToDo = _context.Activitys.Where(a => a.MasoolAghdamUserID == user.Id && PersianDateTime.Parse(a.ActvityAghdamDate) < persianDate).ToList();
В этом коде произошла ошибка. Пожалуйста, смотрите также фото
PersianDateTime.Parse(a.ActvityAghdamDate)
3 ответа
Если вам подходит первый код, то:
Может быть, вы можете изменить эту строку:
var ActivitysNotToDo = _context.Activitys.Where(a => a.MasoolAghdamUserID == user.Id && PersianDateTime.Parse(a.ActvityAghdamDate) < persianDate).ToList();
За это:
var ActivitysNotToDo = _context.Activitys.Where(a => a.MasoolAghdamUserID == user.Id && PersianDateTime.Parse(Convert.ToDateTime(a.ActvityAghdamDate).ToString("yyyy/MM/dd")) < persianDate).ToList();
Функция DateTime.Parse();
нуждается в строковом параметре, поэтому вы должны передать строковый параметр в своем выражении.
DateTime now = DateTime.Now;
string s = now.ToString("yyyy/MM/dd");
DateTime.Parse(s);
DateTime.Parse(now.ToString()); // Conversion required
Попробуйте следующий код.
PersianDateTime.Parse(a.ActvityAghdamDate.Value.ToString("yyyy/MM/dd"))
or
PersianDateTime.Parse(Covert.ToDateTime(a.ActvityAghdamDate).ToString("yyyy/MM/dd"))
Метод C# Compare()
используется для лексикографического сравнения первой строки со второй строкой. Если обе строки равны, возвращается 0.
Похожие вопросы
Новые вопросы
c#
C # (произносится как «резкий») - это высокоуровневый, статически типизированный язык программирования с несколькими парадигмами, разработанный Microsoft. Код C # обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, включая, среди прочего, .NET Framework, .NET Core и Xamarin. Используйте этот тег для вопросов о коде, написанном на C # или в формальной спецификации C #.
PersianDateTime
? Не могли бы вы поделиться с нами?