Entity Frameworkモデルデザイナでnull可能な外部キーを実装しようとしました。しかしEntity Frameworkモデル - 最初のNull可能な外部キー
public Nullable<int> SenderId { get; set; }
、ときに次のように私のクラスはSender
プロパティとそれに応じて生成される設定は、正しいはず
:問題の
表には、次のようになりますContext.Database.Create();
を呼び出すと、作成されたデータベースSenderId
プロパティはNULL可能ではありません。
データベースで列の型をnull可能に手動で変更すると、モデルとデータベースが異なるというEF内でエラーが発生します。
アドバイスはありますか?
ありがとうございます!
デザイナーで「モデルからデータベースを生成する」ようにしてください。データベース用のDDLスクリプトを生成します。フィールドに正しいタイプがあるかどうかを確認してください。それでも誤ったタイプが表示される場合。関連付けとフィールドを削除し、関連付けを再度作成してみてください。自動的にフィールドを作成する必要があります。 –
いいえ、スクリプトは(何らかの理由で)データベースを正しく生成します。 私のコード内でOrderテーブルを使用しようとすると、EntityCommandCompilationExceptionがスローされます。これは、エンティティモデルの列がNULL値をサポートしていないためです。 –