1つのクエリで2つのテーブルに挿入する必要があります。これはLINQで可能ですか?LINQを使用して1つのクエリで2つのテーブルに挿入
現在、私はinsertonsubmit()を2回使用しています。
1つのクエリで2つのテーブルに挿入する必要があります。これはLINQで可能ですか?LINQを使用して1つのクエリで2つのテーブルに挿入
現在、私はinsertonsubmit()を2回使用しています。
SubmitChanges
に電話するまで、データベースの送信は行われません。 InsertOnSubmit
への複数の通話に関連した具体的な費用はありません。
これでも2つのTSQL INSERT
コマンドが発生します。通常の単一のINSERT
コマンドで2つのテーブルに挿入することはできません。提出時に、あなたのオブジェクトとリンクされているすべてのオブジェクトを追加します
InternetStoreDataContext db = new InternetStoreDataContext();
Category c = new Category();
c.name = "Accessories";
Product p = new Product();
p.name = "USB Mouse";
c.Products.Add(p);
//and finally
db.Categories.Add(c);
db.SubmitChanges();
を:あなたのテーブルがお互いに主キー/外部キー関係を持っている場合は
"これはまだ"これは2つの結果になる "と思われます。 –
@Joe - ありがとうございます。私の息が止まった指! –
、あなたはまた、あなたがお互いにリンクすることができます2つのオブジェクトを持っています変更。
これが機能するには、両方のテーブルにプライマリキーが必要です。それ以外の場合、LINQはリンク可能性を提供しません。あなたは私たちが多分できもう少しあなたを助けるためにいくつかのコードを表示した場合http://weblogs.asp.net/scottgu/archive/2007/05/19/using-linq-to-sql-part-1.aspx
dbとは何ですか、dbはdatabasecontext objまたは他のオブジェクトです – vineth
:ここ
は、SQLにLINQを使用しての良い例です。 –