Проблема LInq to Sql Insert DateTime - PullRequest
0 голосов
/ 31 января 2011

Я начинаю с Linq to sql.Я пытаюсь вставить запись.Вот мой код.

FMCSA_USER_LOG _MyUserLog = new FMCSA_USER_LOG();

_MyUserLog.USER_ID = model.UserID;

_MyUserLog.ACTIVITY_TYPE_ID = model.ActivityTypeID;
_MyUserLog.ACTIVITY_TARGET =  model.ActivityTarget;
_MyUserLog.DESCRIPTION = model.Description;
_MyUserLog.ACTIVITY_TIME = DateTime.Today;
_MyUserLog.ACTIVITY_TYPE_ID = null;
_MyUserLog.DESCRIPTION = null;
db.FMCSA_USER_LOGs.InsertOnSubmit(_MyUserLog);

db.SubmitChanges();

Я получил это исключение из-за переполнения SubmitChanges:

SqlDateTime.Должно быть между 01.01.1753 12:00:00 и 31.12.9999 23:59:59.

Из моего прочтения этой проблемы это происходит, когда у вас есть свиданиеполе, и для него установлено слишком низкое значение.И все же единственное поле даты в таблице, которое я установил на сегодняшнюю дату.

Вот запись;Я не понимаю, что я делаю не так.

CREATE TABLE [dbo].[FMCSA_USER_LOG](
 [ID] [int] IDENTITY(1,1) NOT NULL,
 [USER_ID] [int] NULL,
 [ACTIVITY_TIME] [datetime2](7) NOT NULL,
 [ACTIVITY_TYPE_ID] [int] NULL,
 [ACTIVITY_TARGET] [varchar](50) NULL,
 [DESCRIPTION] [varchar](8000) NULL,
 CONSTRAINT [PK_FMCSA_USER_LOG] PRIMARY KEY CLUSTERED 
 ([ID] ASC)
)

1 Ответ

0 голосов
/ 28 сентября 2017

Мне потребовалось некоторое время, чтобы вставить .net datetime в столбец datetime2.Я получил это работает с этим методом:

FMCSA_USER_LOG _MyUserLog = new FMCSA_USER_LOG();

var MyAwesomeDateTime = DateTime.Today.ToString("yyyy-MM-dd HH:mm:ss:fff");
var MyAwesomeDateTime2 = DateTime.ParseExact(MyAwesomeDateTime , "yyyy-MM-dd HH:mm:ss:fff", CultureInfo.InvariantCulture);

_MyUserLog.USER_ID = model.UserID;

_MyUserLog.ACTIVITY_TYPE_ID = model.ActivityTypeID;
_MyUserLog.ACTIVITY_TARGET =  model.ActivityTarget;
_MyUserLog.DESCRIPTION = model.Description;
_MyUserLog.ACTIVITY_TIME = MyAwesomeDateTime2;
_MyUserLog.ACTIVITY_TYPE_ID = null;
_MyUserLog.DESCRIPTION = null;
db.FMCSA_USER_LOGs.InsertOnSubmit(_MyUserLog);

db.SubmitChanges();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...