問題タブ [submitchanges]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1083 参照

c# - linq to sql アプリで変更を送信すると、子テーブルに新しい行を挿入できません

子テーブルに新しいレコードを挿入する正しい方法がわかりません。

アプリには単一のデータ コンテキストがあり、ターゲット テーブル (CustNotes) は Customer という名前のテーブルの子です。Customer と CustNotes の間には 1 対多の関連付けがあります。データコンテキスト名は CustomerOrdersDataContext です。

私が使用しているコードは次のとおりです。

エラーは、太字のイタリック線に関連しています。ここにあります:

System.Data.Linq.Table' には 'Add' の定義が含まれておらず、タイプ 'System.Data.Linq.Table' の最初の引数を受け入れる拡張メソッド 'Add' が見つかりませんでした (using ディレクティブがないか、またはアセンブリ参照?)

誰にでも役立つ手がかりがあります。

0 投票する
2 に答える
704 参照

linq - LINQ コンテキスト

SubmitChanges の順序 (挿入、更新、削除) について、その順序を変更する方法はありますか? 最初に削除を実行し、更新を実行し、次に新しい挿入を実行する必要があります。ユーザーがすべての追加、変更、更新、送信を実行できるデータグリッドがあります。各グリッド行には (ドロップダウンを介して) 選択された一意のアイテムが必要であるため、ユーザーが行を削除し、削除されたドロップダウン アイテムを新しい行で利用してから、すべての変更を更新して、更新は失敗します (ユーザーが削除しようとしている項目は実際にはまだデータベースに存在するため、送信は最初に挿入を行っているためです)。自動更新の順序を制御できる設定はありますか、それとも自分で更新を手動で行う必要がありますか?

0 投票する
2 に答える
394 参照

linq - In which layer to make linq-sql calls as SubmitChanges(), InsertOnSubmit() etc

Which layer is the best layer to make linq-sql calls as SubmitChanges(), InsertOnSubmit() etc.

For example, let's say I have two tables Parent and Child. Child table has foreign key on parent (Child table has ParentId column). I want to insert parent object and child objects into the db.

Using linq-sql, I can do this.

Am I mixing Presentation layer code with data access layer? If so, how do I do it with a business layer object in between?

Please let me know. Thanks.

0 投票する
2 に答える
716 参照

linq-to-sql - SubmitChanges は保存しませんが、変更セットから挿入を削除します。エラーはありません

Linq to Sql SubmitChanges() 関数のデバッグ機能に関して、より深い質問があります。

ローカルにキャッシュされたデータベースのテーブルにレコードを保存したい (localdbcache: サーバー SqlExpress 2008 クライアント SqlCE)。SubmitChanges を呼び出す前に、DataContext.GetChangeSet() を介して新しい項目を見つけることができます。Submit Changes を呼び出した後、挿入するアイテムは ChangeSet から削除されています。(それが、この関数が行うべきことです。) データベースのログ出力に、変更の競合やエラーはありません。例外はありません。テーブルの Count は同じ値のままです。

エラーを見つける希望を失っているので、助けていただければ幸いです。事前に感謝しますウィンストン

0 投票する
2 に答える
1201 参照

linq-to-sql - Linq から Sql - DataContext.SubmitChanges() の問題

私はこのようなコードを持っています。

DBContext は Datacontext インスタンスです。

この時点で、エラーを無視してスキップしたいと思います。再試行しないでください。しかし、次のような別の挿入を試みると

SubmitChanges は、最初に前回の試行を再試行します。

「エラーをスキップし、再試行しないでください」と伝えるにはどうすればよいですか?

0 投票する
2 に答える
4980 参照

c# - DataContext による例外

インターネットでいろいろ検索してみたのですが、アンサーが見つからないようです。DataContext はどのような例外をスローできますか? または、より具体的には、DataContext.SubmitChanges() メソッドがスローする例外は何ですか?

EDIT
参考までに、L2S DataContext によってスローされる可能性のある既知の例外のリストを次に示します。

  • SqlException
  • ChangeConflictException
  • DuplicateKeyException
  • ForeignKeyReferenceAlreadyHasValueException
  • OutOfMemoryException (DataContext を正しく破棄していない場合)
0 投票する
1 に答える
1449 参照

linq - LINQのSubmitChangesを使用する場合の挿入ステートメントの検査

テキストベースのADO.NETコマンドを接続しているかのように、挿入ステートメントがどのように表示されるかを確認したいと思います。どうすればよいですか?

私は以下のリンクをたどっています:

http://damieng.com/blog/2008/07/30/linq-to-sql-log-to-debug-window-file-memory-or-multiple-writers

そして、私のプロジェクトにDebugTextWriterクラスを追加しました。だから、今、私のコードには、実際には何もしない次のものがあり、私はそれが正しいとは思いません:

私が間違っていることや、LINQ挿入ステートメントを正しく検査する方法について何か考えはありますか?

ありがとう

0 投票する
1 に答える
558 参照

linq-to-sql - いくつかの SubmitChanges が連続して非常に遅い

1 つの質問: 次のコードを使用する理由

約8秒で終了

しかし、このコードを使用すると

約50秒で終了

それは私にとってより適しているので、どうすればより速い2番目の例を行うことができますか?

0 投票する
1 に答える
482 参照

c# - 「Row Not Found or Changed」エラーがランダムに表示される

私が走るとき

DB.SubmitChanges();

「行が見つからないか、変更されていません」というエラーが表示されることがあります。このエラーが私を悩ませている理由は、このクエリで見つかるはずの行が常に存在し、新しい変更がある場合にのみ変更が行われるためです。

このエラーが表示される理由がわかりません このエラーが表示される一般的な理由はありますか?

0 投票する
2 に答える
1180 参照

sql - LINQ to SQL context.SubmitChanges - エラーの詳細を取得する方法は?

大量のデータが一度に SQL データベースに挿入されるアプリケーションに取り組んでいます。私は LINQ to SQL を使用しており、挿入操作として次のようなものがあります。

foreach (オブジェクト内の var obj) { context.InsertOnSubmit(obj); } context.SubmitChanges();

問題は次のとおりです。例外 (DuplicateKeyException など) が発生した場合、どのオブジェクトが問題を引き起こしたのかわかりません。私が得ている唯一の情報は、オブジェクトの少なくとも 1 つに、データベース内の他のキーと同一のキー値が含まれているということです。

競合の原因となったオブジェクトに関する詳細情報を抽出することは可能ですか?

もちろん、InsertOnSubmit のたびに SubmitChanges を呼び出すこともできますが、挿入するデータの量を考えると、これは非常に遅くなります。

誰でも私に何かヒントはありますか?ありがとう!