1

Entity Framework を使用してデータを別のテーブルに保存する必要があるプロジェクトで作業しています。私は実際にアドレスを保存しています。

私のテーブルは次のとおりです。

住所 (Id、住所 line1、StateId、SuburbId、PostcodeId)
州 (Id、StateName)
郊外 (Id、SuburName)
郵便番号 (Id、PO)

新しい住所を挿入するにはどうすればよいですか。郵便番号および/または郊外がテーブルに存在する場合は、新しい住所に既存のものを使用し、そうでない場合は、新しい郊外/郵便番号を関連するテーブルに挿入します。たとえば、新しい住所が挿入されていますが、郊外テーブルに郊外が既に存在するため、郊外テーブルに郊外を作成 (複製) する代わりに、既存の住所に制約が必要です。

それは理にかなっていますか?何を試せばいいのかわからないので、何も試していません。

これは私がこれまでに持っているものです:

Entities db = new Entities();

var addrSuburb = new Suburb()
{
    SuburbName = "My Suburb"
};

var addrState = new State()
{
    State1 = "My State",
    StateShort = "MS"
};
var addrPostCode = new Postcode()
{
    PO = 4234
}
var addrCust = new Address()
{
    AddressLine1 = My address,
    Suburb1 = addrSuburb,
    Postcode1 = addrPostCode,
    State = addrState
};

db.Postcodes.Add(addrPostCode);
db.Suburbs.Add(addrSuburb);
db.States.Add(addrState);                        
db.Addresses.Add(addrCust);
db.SaveChanges();

小さな例があれば、それは素晴らしいことです!

4

1 に答える 1