asp.net mvc 5を使用してウェブサイトを開発していて、使用しているデータベースがMS SQL Server Management Studio 17.現時点では、エンティティフレームワークを使用して、親と子の関係のあるデータをエンティティフレームワークに挿入してデータベースに更新する必要があります。C#asp.net mvcのエンティティフレームワークを使用して、親と子のデータをSQLデータベースに挿入/更新する方法
親テーブル(アカウント):
public class Accounts
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
//The foreign key in database
public int UserAddressId { get; set; }
//The child collection
public virtual ICollection<Addresses> Addresses { get; set; }
}
子テーブル(住所):私は、親テーブルにデータを挿入したい場合、私は、SQLで知っ
public class Addresses
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int AddressId { get; set; }
[ForeignKey("AddressId")]
public virtual Accounts Account { get; set; }
}
、私がしなければなりません最初に子テーブルのデータを作成し、そのデータを親テーブルに挿入します。しかし、私はエンティティフレームワークでそれを行う方法を知らない。
質問1: エンティティクラスの関係を正しく設定していますか?
質問2: エンティティフレームワークを使用してデータをデータベースに挿入/更新するにはどうすればよいですか?私はワンショットでやりたい、私にいくつかのコード例を教えてください。
*ワンショットでやりたい*挿入したいものによって決まります。現在のコードを表示してください。 –
こんにちは@GertArnold、私はデータベースにアドレスとアカウントを挿入します。 AccountテーブルのUserAddressIdはAddressテーブルのAddressIdを指す外部キーであるため、データをAccountテーブルに挿入する前にアドレスデータを挿入する必要があります。また、Addressデータが作成された後、外部キーとしてAccountテーブルのAddressテーブルにAddressIdが必要です。 – IYU