リモート データベースから一連の行を読み取り、ローカル データベースから同様のセットを読み取り、RemoveAll を使用して既にローカルに存在するリモート行を削除しています...
remote_events = (From a In remote.Events
Where ...etc...).ToList
local_events = (From a In local.Events
Where ...etc...).ToList
remote_events.RemoveAll(Function (ByVal event_row As Remote_Event)
(From a In local_events Where a.Identifier = event_row.Identifier).Count > 0)
しかし、これは私には正しくないようです。本当に必要なのは一致が存在するかどうかを確認することだけである場合、物事を数えるべきではないと思います。andのさまざまな使用法を試しましたが、意味がIsDBNull
ありIsNothing
ません。リスト要素が同じタイプではないため、 (ここで.Except
提案されているように)使用できません。
これを行うより良い方法はありますか?