所以這是一個新的錯誤,剛開始對我來說,我不知道爲什麼。當我嘗試通過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