所以这是一个新的错误,刚开始对我来说,我不知道为什么。当我尝试通过EF6添加表格时,在任何不可空的字段上出现以下错误。在我已经能够添加的表上,如果我用XML打开edmx文件,我可以看到StorageSection中每个表的[Key]部分包含表中的每个字段。所以这显然是一个错误,但我不确定它在哪里。EF6 MySql - 密钥的所有部分必须是不可空的
我已经做了以下内容: - 双检查了我的数据模型,在MySQL(使用版本5.7.7) - 卸载并重新安装的Visual Studio 2015年 - 卸载并重新安装实体框架(版本6.1.3) - 使用Devart dotConnect MySql Pro试用版(版本8.6.677.0) - 双击所有web.config选项以确保它们是正确的。
示例错误: 错误13101:类型'aspnetusers'的关键部分'LockOutEndDateUtc'无效。密钥的所有部分必须是不可空的。 HRSMonitor C:\用户\凯文\文档\ Visual Studio的2015年\项目\ HRSMonitor \ HRSMonitor \型号\ dbHRS.edmx
下面是该aspnetusers表的CREATE TABLE脚本:
'aspnetusers',“CREATE TABLE aspnetusers
(Id
VARCHAR(128)NOT NULL,Email
VARCHAR(256)DEFAULT NULL,EmailConfirmed
TINYINT(4)DEFAULT NULL,PasswordHash
VARCHAR(21000)DEFAULT NULL,SecurityStamp
VARCHAR(21000)DEFAULT NULL,PhoneNumber
VARCHAR(21000)DEFAULT NULL, PhoneNumberConfirmed
TINYINT(1)DEFAULT NULL,TwoFactorEnabled
TINYINT(1)DEFAULT NULL,LockOutEndDateUtc
日期时间DEFAULT NULL,LockoutEnabled
位(1)DEFA ULT NULL,AccessFailedCount
INT(11)DEFAULT NULL,UserName
VARCHAR(256)NOT NULL,PRIMARY KEY(Id
),KEY Id
(Id
))ENGINE = InnoDB的默认字符集= latin1' 的
任何想法将不胜感激。
您是否已经创建了此表?意义(你的问题是模糊的)桌子是否已经存在? – Drew
是的,表已经创建。这是模型优先设计。 –
'show create table theTableName;'< - 运行它,用一个[编辑]发布它来提问(即:不要将它转储到这里的注释中) – Drew