これは私のために立ち上がる新しいエラーです。 EF6でテーブルを追加しようとすると、null不可能なフィールドで次のエラーが発生します。私が追加できたテーブルで、XMLでedmxファイルを開くと、StorageSection内の各テーブルの[Key]セクションには、テーブルのすべてのフィールドが含まれていることがわかります。これは明らかにどこかのバグですが、私はどこにいるのか分かりません。EF6 MySql - キーのすべての部分はnull不可能でなければなりません
私は次のことをやった: - MySQLでダブルチェック私のデータモデル(バージョン5.7.7を使用して) - アンインストールをとVisual Studioに2015 を再インストール - アンインストールし、再インストールEntity Frameworkの(バージョン6.1.3) を - Devart dotConnect MySql Proトライアル(バージョン8.6.677.0)の使用 - すべてのweb.configオプションをダブルチェックして、それらが正しいことを確認します。
サンプルエラー: エラー13101:タイプ 'aspnetusers'のキー部分 'LockOutEndDateUtc'が無効です。キーのすべての部分はnull不可能でなければなりません。 HRSMonitor Cは:\ユーザーはプロジェクト\ Visual Studioの2015 \ HRSMonitor \ HRSMonitor \モデル\ケビン\ドキュメント\ \ dbHRS.edmx
はここaspnetusersテーブル用のテーブル・スクリプトを作成します:「、
'aspnetusers' CREATE TABLEをaspnetusers
(Id
VARCHAR(128)NOT NULL、Email
VARCHAR(256)は、デフォルトのNULL、EmailConfirmed
TINYINT(4)デフォルトNULL、PasswordHash
VARCHAR(21000)デフォルトNULL、SecurityStamp
VARCHAR(21000)デフォルトNULL、PhoneNumber
VARCHAR(21000)デフォルトNULL、 PhoneNumberConfirmed
tinyint(1)DEFAULT NULL、TwoFactorEnabled
tinyint(1)DEFAULT NULL、LockOutEndDateUtc
datetime DEFAULT NULL、LockoutEnabled
ビット(1)DEFA ULTのNULL、AccessFailedCount
int型LATIN1' (11)DEFAULT NULLを、UserName
VARCHAR(256)NOT NULL、PRIMARY KEY(Id
)、KEY Id
(Id
))ENGINE = InnoDBのデフォルトCHARSET =
任意のアイデアをいただければ幸いです。
このテーブルは既に作成されていますか?意味は(あなたの質問はあいまいです)テーブルは物理的にすでに存在していますか? – Drew
はい、テーブルはすでに作成されています。これは、モデルファーストデザイン用です。 –
'show create table theTableName;' <---これを実行し、質問に[edit]を付けて公開します(つまり、ここにコメント内にダンプしないでください) – Drew