コードを最初に使用するとエラーが発生するのはなぜですか?あなたに私のアプリケーションで簡単に見を与えるために、この私のクラスである:最初にコードを使用するとエラーが発生する
[Table("Votes")]
public class Vote {
[Key()]
public int Id { get; set; }
[ForeignKey("User")]
public int UserId { get; set; }
public virtual User User { get; set; }
[ForeignKey("Answer")]
public int AnswerId { get; set; }
public virtual Answer Answer { get; set; }
}
そして、このコード行の後:
An unhandled exception of type 'System.Data.Entity.Infrastructure.DbUpdateException' occurred in EntityFramework.dll
Additional information: An error occurred while updating the entries. See the inner exception for details.
のでエラー:
Vote v = new Vote();
v.UserId = 1;
v.AnswerId = 1;
using (var context = new DatabaseContext()) {
context.Votes.Add(v);
context.SaveChanges();
}
を私はエラーを取得していますcode first
とSQLExpress
データベースを使用しているときに発生します。 database first
とSQLite
というデータベースを使用している場合、それは魅力的なように機能しています。同じクラスですが、エラーはありません。
エラーが発生しないように気付いたので、v.User
とv.Answer
を初期化する必要があります。しかし、なぜ? database first
には必要ありませんでした。
nullに設定して試してみてください。 –
@ KeyurPATELはい、まだ動作していません。 'User'と' Answer'の新しいインスタンスを作成し、それらを 'v'オブジェクトのプロパティにするときだけ動作します。 – Dawvawd
モデルビルダーを追加してください。 –