.NET MAUI: обнаружение дат перекрытия с использованием SQLite [Duplicate]C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 .NET MAUI: обнаружение дат перекрытия с использованием SQLite [Duplicate]

Сообщение Anonymous »

У меня есть то, что становится очень сложной проблемой. Я пытаюсь создать функцию, которая, когда при предоставлении даты начала/времени и даты окончания/времени/времени определяет, перекрывает ли какой -либо из них другую дату/время в базе данных SQLite и возвращает TRUE или FALSE в зависимости от результата. После того, как лот Finnicking это было лучшее, что я закончил тем, что придумал:

Код: Выделить всё

        public static async Task DetermineOverlap(DateTime start, DateTime end)
{
await Init();

// Convert DateTime to string in the format that SQLite understands
string startFormatted = start.ToString("yyyy-MM-dd HH:mm:ss");
string endFormatted = end.ToString("yyyy-MM-dd HH:mm:ss");

// Raw SQL query to check if the time ranges overlap
string query = @"
SELECT COUNT(*)
FROM Appointment
WHERE
(StartDateTime < @end AND EndDateTime > @start) OR
(@start < EndDateTime AND @end > StartDateTime);";

var count = await _db.ExecuteScalarAsync(query, new object[] { startFormatted, endFormatted });

// Check if any record exists in the result, indicating an overlap
return count > 0;
}
< /code>
Теперь у меня есть отдельная функция, которая, в качестве теста, получает существующую запись StartDateTime и EndDateTime из базы данных. Я точно знаю, что они 2025-01-23 01:00:00 
и 2025-01-23 01:15:00 соответственно. Теперь параметры, которые я передаю для определения, представляют собой DateTime, состоящий из 23.01.2025 1:00:00 и 23.01.2025 1:45:00 (Следовательно, почему я конвертирую формат строки) ... Последний из них, очевидно, перекрывается 1:15 утра. Проблема в том, что несмотря ни на что, функция всегда возвращает ложь. Я экспериментировал с таким количеством разных способов сделать это, но безрезультатно. Я упускаю что -то очень очевидное? Спасибо. < /P>
Изменить: вопрос был закрыт за возможным обманом, решение было предложено, однако не связано ни C#, ни Sqlite, последнее из которых, по -видимому, вызывает эту проблему (i (i «В» был подобный запрос на это в прямом SQL и не имел проблем) ... также, SQLite хранится как текст, так что есть, поэтому он обрабатывается по -разному.

Подробнее здесь: https://stackoverflow.com/questions/793 ... ing-sqlite
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • «SQLite.SQLiteException» в SQLite-net.dll и «SQLite.SQLiteException» в ошибке System.Private.CoreLib.dll в .net Maui, ко
    Anonymous » » в форуме C#
    0 Ответы
    58 Просмотры
    Последнее сообщение Anonymous
  • «SQLite.SQLiteException» в SQLite-net.dll и «SQLite.SQLiteException» в ошибке System.Private.CoreLib.dll в .net Maui, ко
    Anonymous » » в форуме C#
    0 Ответы
    62 Просмотры
    Последнее сообщение Anonymous
  • .NET Maui: обнаружение перекрывающихся дат с помощью SQLite [дубликат]
    Anonymous » » в форуме C#
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Эффективный расчет перекрытия диапазона дат?
    Anonymous » » в форуме Python
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • .NET MAUI ScrolltoAsync Не работает правильно на iOS, когда вход сфокусирован (проблема перекрытия клавиатуры)
    Anonymous » » в форуме IOS
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»