問題タブ [savechanges]
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.
entity-framework - Entity Framework は、2 レベルのリレーションシップを持つ新しいエンティティで SaveChanges を実行しません
ADO.NET Entity Framework を使用して ASP.NET MVC サイトを構築しています。外部キーによって関連付けられたこれらのエンティティを含むエンティティ モデルがあります。
レポート(ID、日付、見出し、Report_Type_ID など)
- SubReport(ID、ReportText など) - Report との 1 対 1 の関係。
- ReportSource(ID, Name, Description) - Sub_Report との 1 対多の関係。
- ReportSourceType(ID, Name, Description) - ReportSource との 1 対多の関係。
- 連絡先 (ID、名前、住所など) - Report_Source との 1 対 1 の関係。
- ReportSource(ID, Name, Description) - Sub_Report との 1 対多の関係。
サブレポートの種類ごとに Create.aspx ページがあります。ポスト イベント メソッドは、新しい Sub_Report エンティティを返します。
前に、投稿メソッドで、次のプロセスに従いました。
- ページのフィールドから新しいレポート エンティティのプロパティを設定します。
- ページのフィールドから SubReport エンティティの特定のプロパティを設定します。
- SubReport エンティティの Report を、1 で作成した新しい Report エンティティに設定します。
- ページによって提供された ID を指定して、ReportSource を検索し、Sub_Report エンティティの ReportSource を見つかったエンティティに設定します。
- 変更内容を保存。
このワークフローは、数週間うまくいきました。それから先週何かが変わり、それはもう機能しません。保存操作の代わりに、次の例外が発生します。
デバッグ ビジュアライザーには次のように表示されます。
- SubReport の ReportSource が設定およびロードされ、そのすべてのプロパティが正しい。
- Report_Source には、有効な ReportSourceType エンティティが添付されています。
SQL Profiler では、準備された SQL ステートメントは問題ないように見えます。誰かが私が見逃している明白なことを教えてもらえますか?
ティア
注: この場合、Report と SubReport は常に新しいエンティティです。Report エンティティには、多くの種類のレポートに共通のプロパティが含まれており、一般的なクエリに使用されます。サブレポートは、タイプによって異なる追加パラメーターを持つ特定のレポートです。実際には SubReport の種類ごとに異なるエンティティ セットがありますが、この質問はそれらすべてに当てはまるため、簡略化した例として SubReport を使用します。
linq - Linq SaveChanges の質問
オブジェクトが正しく保存されているかどうかを確認するために、このチェックを行う必要がありますか?
そうでない場合は、例外をスローする必要がありますよね?
entity-framework - EntityFrameworkで挿入または更新が成功したかどうかを確認します
ADO.NETでは、ExecuteNonQuery() "UPDATE、INSERT、およびDELETEステートメントの場合、戻り値はコマンドの影響を受ける行数です"(http://msdn.microsoft.com/en-us/library/system)。 data.sqlclient.sqlcommand.executenonquery.aspx)
EF v1では、context.SaveChanges()メソッドは、「SaveChangesが呼び出されたときに、追加、変更、または削除された状態のオブジェクトの数」を返します。(http://msdn.microsoft.com/en-us/library/bb739065.aspx)
複数のエンティティ(または単一のエンティティ)がコンテキストおよびcontext.SaveChanges()メソッドに追加または更新された場合、実際のINSERTまたはUPDATEが成功したかどうかを確認する方法を教えてください。
INSERT(s)またはUPDATE(s)が成功したという例外がなかったと仮定できますか?
ありがとうございました
c# - Entity Framework - 新しい子を持つ新しいエンティティを savechanges で追加できない
複数の「受信者」が追加された「レター」というオブジェクトを作成しています。
コンテキストで savechages が呼び出されると、このエラーが発生します。「'EchoEntities.LetterRecipients' のエンティティは、'FK_LetterRecipient_Letter' 関係に参加しています。0 件の関連する 'Letter' が見つかりました。1 件の 'Letter' が予期されます。」
また、1 人の受信者のみを追加すると、2 人の受信者で機能し、失敗します。
短縮コード:
entity-framework - 何千ものEntityFrameworkオブジェクトを作成するときに、いつSaveChanges()を呼び出す必要がありますか?(インポート中のように)
実行ごとに数千のレコードを持つインポートを実行しています。私の仮定の確認を探しているだけです:
これらのどれが最も理にかなっています:
SaveChanges()
すべてのAddToClassName()
呼び出しを実行します。- n回の呼び出し
SaveChanges()
ごとに実行します。AddToClassName()
- すべての呼び出しの
SaveChanges()
後に実行します。AddToClassName()
最初のオプションはおそらく遅いですよね?メモリ内のEFオブジェクトを分析する必要があるため、SQLなどを生成します。
2番目のオプションは、両方の長所であると思います。これは、その呼び出しの周りにtry catchをラップでき、一方が失敗した場合に一度にnSaveChanges()
個のレコードしか失うことができないためです。たぶん、各バッチをリスト<>に保存します。呼び出しが成功した場合は、リストを削除します。失敗した場合は、アイテムをログに記録します。SaveChanges()
SaveChanges()
最後のオプションも、が呼び出されるまですべてのEFオブジェクトがメモリ内にある必要があるため、おそらく非常に遅くなります。そして、保存が失敗した場合、何もコミットされませんよね?
android - androidonSaveInstanceStateの使用法
次のクラスで私が何を保存すべきかを教えてください。
getextraメソッドから取得している文字列を1つだけ使用しており、次のオーバーライドされたメソッドに格納する必要があると思うものは何もないことを覚えておいてください。
onsaveインスタンスメソッドに何を保存し、何を保存しないかを教えていただけますか?
java - オブジェクトが変更されたかどうかを判断する最良の方法は何ですか?
Java Web アプリケーション (JSF1.2、RichFaces) で「保存」Bean 機能を作成しました。JAXB を使用して XML 文字列に変換し、データベースに格納します。ユーザーがこれをロードした場合、(Bean)コンテンツが変更され、再度保存する必要があるかどうかをユーザーに通知したいと思います。
hashCode()
私の考えは、関数 'with'をオーバーライドすることですorg.apache.commons.lang.builder.HashCodeBuilder
が、多くのフィールドと子要素があります。この種の機能を処理する他の方法はありますか?
編集
「比較」は別視点で!
どんな助けでも大歓迎です!
c# - Entity Framework がエンティティを取得できるのに、エンティティを保存/更新/削除できないのはなぜですか?
Entity Frameworkクラス モデルを作成したローカル .MDF ファイルを含むWPFアプリがあります。
データベースからエンティティを取得するとうまくいきます:
ただし、更新と追加と削除*は行いません。**エラーは発生せず、デバッガーはそのまま進み、出力にメッセージはありませんが、データベース テーブルのデータは変更されません。
Entity Framework でエンティティを更新してデータベース テーブルに追加するにはどうすればよいですか?
entity-framework - .Net EntityFrameworkSaveChangesはaddメソッドなしで追加しています
私はエンティティフレームワークを初めて使用し、savechangesがどのように機能するかについて本当に混乱しています。私の例にはおそらく改善できるコードがたくさんありますが、ここに私が抱えている問題があります。
ユーザーは一連のピックを入力します。ユーザーがこれらのピックをまだ入力していないことを確認します。次に、ピックをデータベースに追加します。
私はテストしましたが、SaveChangesはループにある必要はありません。以下のコードも機能します。
私が理解していない文脈で明らかに何かが起こっています。どういうわけか、新しいピックを保留中の変更としてロードしたと思いますが、それが本当であっても、変更を保存するためにそれらをループする必要があることを理解していません。
誰かが私にこれを説明できますか?
Craigの応答に基づいて更新された作業コードは次のとおりです。1)Typeを削除してから、結果をループして新しいオブジェクトにデータを入力します。
2)または、予測を保存したくない場合は、予測を切り離すことができます。
php - PHP に適した IDE は何ですか? ファイル保存時にサーバーに自動アップロードする必要があります
保存時に自動アップロードする PHP 用の優れたエディターを教えてください。基本的に、ファイルをローカルに保存したくありません..thx。