問題タブ [change-tracking]
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.
.net - ChangeTracker EntityFramework4.1-関連オブジェクトの元の値
私は、他のエンティティとの2つのゼロから多くの関係を持つ、継承する基本クラスを持っています。
SaveChanges中にChangeTrackerを使用してエンティティを表示するときに、これらの関係(RelatedWebObjectsおよびRelatedTags)の元の値を取得するのに問題があります。前後のすべてのスカラー値を見ることができ、新しい関係を見ることができますが、古い関係を見ることができません。MemberメソッドとCollectionメソッドを使用してみましたが、現在の値しか表示されません。古いものではありません。また、ナビゲーションプロパティの名前を知っている必要があるため、これらを使用するのは好きではありません。これは、十分に一般的ではありません。
関係が変更されている関連オブジェクトを見つけることができますが、もちろん、それらの関連オブジェクト内の値は変更されていないので、それも役に立ちません。
ChangeTrackerを使用したSaveChanges中に、エンティティの以前の関係を追跡するためのクリーンな方法はありますか?
以下は私が取り組んでいるコードのセクションです:
c# - EF 4.1 Code First - 変更されたプロパティを特定する
Entity Framework 4.1 Code First を使用しています。エンティティがデータベースから読み込まれてから変更されたプロパティのリストを取得する組み込みの方法はありますか? オブジェクトが変更されたことをコードが最初に検出することは知っていますが、変更されたプロパティを正確に取得する方法はありますか?
sql-server-2008 - SQL Server 2008 変更追跡を使用して MS Sync Framework 2.0 を 2.1 にアップグレードする
SQL Server 2008 および Sql Compact Server 3.5 SP で Sync Framework 2.0 を使用しており、統合された SQL Server 変更追跡を使用しています。
ここで、Sync Framework をバージョン 2.1 にアップグレードしたいと考えています。
ヘルプには、2.0 互換モードがあり、CE データベースが自動的にアップグレードされると書かれています。最後に 2.0 バージョンと同期した CE データベースに接続すると、次のメッセージが表示されます。
Microsoft.Synchronization.Data.DbNotProvisionedException The current operation could not be completed because the database is not provisioned for sync or you not have permissions to the sync configuration tables. Boolean NeedsUpgrade()
Sync Framework が間違った変更追跡メカニズムを使用してデータベースをアップグレードしようとしているようです。しかし、使用するメカニズムを設定する方法を見つけることができませんでした。
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:720, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
詳細、w3wp、17、2011 年 8 月 30 日 11:54:25:722、文字列を使用して接続: データ ソース = mueller1103;初期カタログ = Customer.Web;ユーザー ID = Customer
詳細、w3wp、17、2011 年 8 月 30 日 11:54:25:726、文字列を使用して接続: データ ソース = mueller1103;初期カタログ = Customer.Web;ユーザー ID = Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:728, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:729, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=顧客;パスワード= * *
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:737, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:757, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:770, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:810, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE、w3wp、17、08/30/2011 11:54:25:834、文字列を使用した接続: データ ソース = mueller1103;初期カタログ = Customer.Web;ユーザー ID = Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:846, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
詳細、w3wp、17、2011 年 8 月 30 日 11:54:25:851、文字列を使用して接続: データ ソース = mueller1103;初期カタログ = Customer.Web;ユーザー ID = Customer
VERBOSE、w3wp、17、2011 年 8 月 30 日 11:54:25:862、文字列を使用した接続: データ ソース = mueller1103;初期カタログ = Customer.Web;ユーザー ID = Customer
詳細、w3wp、17、2011 年 8 月 30 日 11:54:25:883、文字列を使用して接続: データ ソース = mueller1103;初期カタログ = Customer.Web;ユーザー ID = Customer
詳細、w3wp、17、2011 年 8 月 30 日 11:54:25:894、文字列を使用して接続: データ ソース = mueller1103;初期カタログ = Customer.Web;ユーザー ID = Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:925, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
詳細、w3wp、17、2011 年 8 月 30 日 11:54:25:931、文字列を使用して接続: データ ソース = mueller1103;初期カタログ = Customer.Web;ユーザー ID = Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:937, 文字列を使用した接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:947, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:952, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:961, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE、w3wp、17、08/30/2011 11:54:25:966、文字列を使用して接続: データ ソース = mueller1103;初期カタログ = Customer.Web;ユーザー ID = Customer
VERBOSE、w3wp、17、08/30/2011 11:54:25:975、文字列を使用した接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:985, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
VERBOSE, w3wp, 17, 08/30/2011 11:54:25:990, 文字列を使用して接続: データ ソース=mueller1103;初期カタログ=Customer.Web;ユーザー ID=Customer
詳細、w3wp、17、2011 年 8 月 30 日 11:54:26:000、データベースへの接続: D:\Customer\Customer.WEB\Service\App_Data\1a074cdb-b03a-406a-8996-098811c375a2CustomerMobil.sdf
System.NullReferenceException オブジェクト参照がオブジェクトのインスタンスに設定されていません。System.Data.SqlServerCe.SqlCeChangeTracking.UpgradePublicTracking(String connectionString) の Boolean UpgradePublicTracking( System.String
)
)
で Microsoft.Synchronization.SyncAgent.DataSynchronize()
で Microsoft.Synchronization.SyncAgent.Synchronize()
で Customer.Sync.Mobile.MobilSync.SyncUp() で D:\Customer\Customer.Sync\Customer.Sync\Mobile\MobilSync .cs:ツァイレ 38。
D:\Customer\Customer.WEB\MobilSync\Sync.cs:Zeile 79 の Customer.WEB.Communication.Sync.DoSyncThread(Object syncParams) で。
.net - EntityFrameworkでのフィールド変更の追跡
オブジェクトで変更されたフィールドを確認する方法はありますか?
問題の例:日付フィールドが変更され、変更がカスタムで保存されている場合、関連するオブジェクトにカスタムロジックを適用する必要があります。
私は以前にそれをやろうとしていますcontext.SaveChanges();
がObjectStateManager
、必要なすべての情報を私に与えてくれません。
c# - c# - 各「追加」操作と各「削除」操作を知るために 2 つの辞書を比較する
私は類似の構造を持つ2つの辞書を持っています
と
最初に Origins を作成しました。初期状態のコピーです。例 :
ユーザーの操作の後、変更辞書に変更を保存します。基本的に、ユーザーは文字列にリンクされた数値を追加または削除できます。したがって、次のような変更のすべての痕跡を保持します。
例: ユーザーが辞書の "tata" に 1 を追加した場合 変更 a have "tata" have 1
ユーザーが辞書の「toto」に 4 を追加した場合 変更 a have "toto" have 1,2,3,4
ユーザーが辞書の「titi」の 1 を削除した場合 変更 a have "titi" have 2
ユーザーがいつ元の状態に戻ったかを簡単に比較するには、変更辞書が必要です。
文字列が変更されていない場合、変更辞書にはこの文字列のエントリがありません。
多くの変更の後、ユーザーは変更を保存できます。したがって、すべての追加操作と削除操作を見つける必要があります。
私の最初のアイデアは、2 つの辞書を比較して、操作 add と操作 remove を確認することです。しかし、どのように?同じ文字列のリストを比較すると、違いがわかるかもしれませんが、ここで立ち往生しています。そして、おそらくこれを行うためのより良い方法がありますか? なにか提案を ?
c# - STE ChangeTracker.OriginalValues は常に空です
EF STE DTO から OriginalValues を取得できません。
私は何か間違ったことをしていますか?
ありがとう
entity-framework - EntityFramework4.1+多対多の関係は追跡を変更します
ICollection <>プロパティの変更(多対多の関係)を検出するにはどうすればよいですか?
change-tracking - 変更セットの追跡ビューに変更セットが表示されないのはなぜですか
誰かがここで私たちを助けてくれることを本当に願っています...
次のブランチ階層を想像してください。
ここで、プロジェクト 1 に変更セット 1 と 2 があり、プロジェクト 2 に変更セット 3、4 と 5 があるとします。
これらのプロジェクトはどちらもリリース 1 に含まれているため、変更セット 1 と 2 を変更セット 6 として Dev にマージし、次に変更セット 7 として Main にマージします。次に、変更セット 3、4 および 5 を変更セット 8 として Dev にマージし、次に次のように Main にマージします。変更セット 9. 次に、変更セット 8 と 9 を変更セット 10 としてリリース 1 にマージします。
その後、リリース 1 の履歴を表示すると、変更セット 10 のみが正しく表示されます。ここまではすべて問題なく、両方のプロジェクト ブランチからのすべての変更がリリース 1 に正常にマージされたことを確認できます。
ここでチェンジセット 10 を右クリックして追跡し、モードをタイムラインに切り替えて、関連するすべてのブランチがブランチ選択ウィンドウで選択されていることを確認します (つまり、リリース 1、プロジェクト 1、およびプロジェクト 2 ブランチ - 中間ブランチは自動的に含まれます)。
私たちが抱えている問題は、プロジェクト ブランチからのソース変更セットが断続的に追跡されないことです。上の例は今朝のマージを表し、追跡はプロジェクト 1 ブランチからの変更セット 1 と 2 を除くすべての変更セットを示しています。これは、変更セット 1 と 2 が Dev にマージされた変更セット 6 を示していますが、含まれていた変更セットは示していません。
なぜこれが起こっているのか、誰にも考えがありますか? そして、それを修正する方法は?
乾杯。
file - ラケットのファイル変更の監視 (tail -f など)
Racket に「tail -f」のような動作を実装したいと考えています。つまり、ファイルから読み取りたいのですが、最後に(read-line file)
到達したときに、他のプロセスがfileに行を追加したときに返される「ブロッキング」のようなものを作成できます。と同期しようとしましたが、ファイル(read-line-evt file)
の最後にいる場合は、他のデータが利用可能になるまでブロックするのではなく、すぐに戻ります。それを行う方法はありますか?