实体框架自身添加默认值

时间:2014-11-24 11:06:53

标签: mysql entity-framework

我有以下表格定义(修剪):

CREATE TABLE `mt_user` (
  `Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `dtUpdated` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `idUpdatedBy` int(10) unsigned NOT NULL,
  `dtCreated` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `idCreatedBy` int(10) unsigned NOT NULL,
  PRIMARY KEY (`Id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

如您所见,没有为idUpdatedByidCreatedBy分配默认值。

尝试从工作台插入一行时,它会失败(因为我没有提供idCreatedByidUpdatedBy)。 这是正确的行为。

另一方面,如果我使用一个简单的表单来使用Entity Framework进行插入,那么这些字段将填充0值,即使我没有定义默认值(在实体框架中也没有)。 / p>

我希望Entity Framework能够使插入失败并抛出关于idUpdatedBy / idCreatedBy没有值的错误。

有人可以解释这种行为以及如何解决这个问题吗?

0 个答案:

没有答案