問題タブ [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 に答える
916 参照

linq - Linq:更新/挿入の dbcontext.SubmitChanges() が成功したことを確認する方法は?

SubmitChanges() が挿入と更新に対して機能したことをどのように確認しますか? メソッドは bool または int 値を返しません。

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

c# - C# レポートの LINQ DataContext.SubmitChanges() 「オブジェクト参照がオブジェクトのインスタンスに設定されていません。」

多くの人がこの問題を抱えていると思いますが、私はそれを修正することも、なぜ私がそれを抱えているのか理解することもできません. 私は今、数時間髪を引き裂いています。

「オブジェクト参照がオブジェクトのインスタンスに設定されていません」というエラーが表示されます。私の datacontext.SubmitChanges() で、このメソッドが 2 回目に実行されます (一連の ObjectName 文字列をループしています)。

result.Name 値が null になる可能性があるためだと思いましたが、もうそうは思いません。

どういうわけかdataContextが閉じられているようですか?しかし、デバッグモードで接続のステータスを確認すると、エラーが発生した後に「オープン」になります。

リポジトリ パターンと ASP.NET MVC を使用しています。

結果オブジェクト (new Object()) は、LINQ DBML 自動生成クラスのインスタンスであり、単一の拡張メソッドをアタッチして作成した部分クラスも含まれています。クラスの拡張がどのように問題を引き起こしているのかわかりません。

私はアイデアがありません。

何かご意見は?あなたが提供できる助けをありがとう!!

よろしくお願いします、

エリック

0 投票する
4 に答える
7158 参照

wpf - linq-to-sqlでdb.SubmitChanges()が機能しない原因は何ですか?

WPFでLINQ-TO-SQLを使用して非常に簡単な例を設定しました。

このようにオブジェクト(pageItem)を取得し、プロパティを変更できます。SubmitChanges()を呼び出すと、エラーは発生しませんが、変更は保存されません。

SubmitChangesが変更を送信しない原因は何ですか?

より詳しい情報:

これも機能しません。db.ExecuteCommandも機能しません。奇妙なことに、F11のデバッグがSubmitChanges()またはExecuteCommand()にステップインしない場合、これらにステップインできないのはなぜですか。

より詳しい情報:

db.Log = Console.Outは私にこれを与えます:

答え

解決策は3つありました。

  • Visual Studioで見ていたものとは別のデータベースを変更していました、ソリューション:

    var db = new MainDataContext(@ "C:\ Users \ TestUser \ Documents \ Visual Studio 2008 \ Projects \ TestPageManager23434 \ TestPageManager23434 \ Data \ Main.mdf"))

  • Updateは機能しましたが、SubmitChanges()は機能しませんでした。解決策は、主キーを設定することでした。

  • それでもすべての問題が表示されていませんでした。問題は、更新されていない「データの表示」ウィンドウがいくつか開いていたことです。

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

c# - RIAを使用するSilverlightアプリケーションでLINQ2SQLデータコンテキストを使用して変更をコミットするためのベストプラクティスは何ですか?

RIAサービスとLINQ2SQLを使用するSilverlightアプリがあり、Silverlightアプリにオブジェクトがあります。

Silverlightアプリでテーブル内のすべてのレコードを(LINQクエリを介して、datacontextを使用して)クエリし、各オブジェクト(レコード)のユーザーコントロールを作成して、後で情報が必要になるため、そのオブジェクトをコントロールに配置します。その後、ユーザーがそのオブジェクト(コントロールに格納されている)に変更を加え、データベースに保存し直したいと思います。

私の問題は、オブジェクトを保存しようとすると、SubmitChangesを実行するためのデータコンテキストがないことです。すでに添付されていると表示されているため、新しいコンテキストに添付できません。

この状況のベストプラクティスは何ですか?

0 投票する
4 に答える
1702 参照

linq-to-sql - LINQ to SQL: "SubmitChanges" の呼び出し中にエンティティを読み取ると DuplicateKeyException が発生する

対処方法が本当にわからないという奇妙な動作が発生しています。エンティティが挿入された直後 (ExecuteDynamicInsert の直後) にエンティティを読み込もうとしていますが、部分メソッドが戻ると、常に System.Data.Linq.DuplicateKeyException "The database generated a key that is already in use. "。

非常に単純な例で達成しようとしているのは次のとおりです。

DataContext ファイル MyDataContext.cs:

プログラム ファイル Program.cs:

挿入後に国を読み取らなければ、コードは正常に機能しますが、何らかの理由で国を読み取る必要があり、ChangeSet を使用したくありません。

これを達成する方法、またはこの動作を回避する方法はありますか?

前もって感謝します。

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

linq - SubmitChanges() は 1 つのフィールドのみを更新しますか?

私は本当にLINQの初心者です。不明な問題が発生しました:

このメソッドを使用すると、更新されたフィールドは 1 つだけです!! これが私のログです:

ほとんどのフィールドを変更しても、テーブルにはすでに主キーがあります。しかし、まだ問題があります。

助けてください!

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

linq-to-sql - LINQ to SQL-オブジェクトの取得、変更、SubmitChanges()は新しいオブジェクトを作成します

私はしばらくこれと戦ってきました。多対1の関連付けを実装しようとしています。テーブルには、読み取り値と呼ばれる行がたくさんあります。これらは時間の経過とともに蓄積され、時々私はそれらをエクスポートしたいと思います。それらをエクスポートするときに、ExportEventという新しいオブジェクトを作成して、エクスポートされた行を追跡し、必要に応じて再エクスポートできるようにします。したがって、Readingは、エクスポートする前にReadingsを作成するため、ExportEventとnull許容の外部キー関係にあります。

私が見つけたのは、次にエクスポートを実行するときに、最初にExportEvent(evt)を作成し、を使用して読み取り値を追加するかどうかです。

または私が使用する場合

SubmitChangesを呼び出すと、evtへの関連付けで作成された新しい読み取り値が常に取得され、元のレコードは更新されません。

ただし、これを最も単純なものに戻しましたが、関連付けなしで2つのオブジェクトを作成できるかどうかを確認するために、すべての読み取り値を取得してそれらのint値を更新したときにも、submitchangesによって多数の新しいレコードが挿入されていることがわかりました。 。どうしたの?

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

linq-to-sql - linq2sql は FK のみを含むテーブルをどのように処理しますか?

次のようなマッピングテーブルがあります。

Article_to_Categories

記事 ID カテゴリ ID

linq2sql を使用してこのテーブルに挿入するにはどうすればよいですか?

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

c# - LINQ DB から削除すると、外部キーの関連付けを持つ他のテーブルのレコードも削除されますか?

したがって、DB のルートには「Customer」というテーブルがあります。顧客は、領収書、住所、ドキュメントなどの約 6 ~ 7 個の他のテーブルにアクセスする外部キーを持っています。SubmitChanges() を使用して顧客を削除すると、外部キーの関連付けを持つすべてのレコードが検索され、それらも削除されます。または、6つのクエリを実行する必要がありますか?