Arhn - архитектура программирования

SQL DateTime Overflow при использовании DateTime.Now + LINQ to SQL

Я получаю странную ошибку при попытке добавить новый элемент в таблицу с помощью LINQ

ошибка: переполнение SqlDateTime. Должно быть между 01.01.1753 00:00:00 и 31.12.1999 23:59:59.

Код:

dbc.TblEvent newEvent = new dbc.TblEvent();
        newEvent.Subject = "Registered";
        newEvent.PersonID = PersonId;
        newEvent.EventDate = DateTime.Now;
        newEvent.EventTypeID = 23;
        newEvent.EventStatusID = 10;
        context.TblEvents.InsertOnSubmit(newEvent);

Как видите, я не делаю ничего интересного. Что я могу сделать, чтобы отсортировать это?

12.10.2010

Ответы:


1

В 99 из 100 случаев переполнение даты и времени в linq происходит из-за того, что дата не устанавливается. DateTime имеет значение по умолчанию, которое меньше минимальной даты, которую может обработать sql.

Проверьте все свои задания. Вам не хватает другого поля даты и времени в вашей таблице?

12.10.2010
  • Не то, что arnt имеет значение NULL или по умолчанию (DateEntered имеет значение getDate ()) 12.10.2010
  • Проблема в дефолте. Linq не будет соблюдать значение по умолчанию по умолчанию и вместо этого назначит минимальную дату и время. Установите для свойства AutoGenerated для поля в конструкторе linq значение true 12.10.2010
  • Аааа да заметил проблему. Вы были правы, что отсутствовало поле даты, хотя оно имеет значение по умолчанию в БД, на которое он все еще жаловался. 12.10.2010
  • Аааа, я не знала этого Андрея. Спасибо! 15.10.2010

  • 2

    Другой сценарий для этого: изменил запрос с LEFT JOIN на INNER JOIN, тем самым сделав поле datetime, ранее допускавшее значение NULL, не допускающее NULL. Необходимо удалить таблицу из .dbml и повторно добавить, чтобы заставить его обновить модель.

    16.11.2018
    Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..