Docs Menu
Docs Home
/ /
Atlas Device SDK
/ /

データの削除 - .NET SDK

項目一覧

  • オブジェクトの削除
  • 複数のオブジェクトの削除
  • オブジェクトとその依存関係オブジェクトの削除
  • 特定のタイプのすべてのオブジェクトの削除
  • Realm 内のすべてのオブジェクトの削除

次のコードは、Realm から 1 つのオブジェクトを削除する方法を示しています。

realm.Write(() =>
{
// Remove the instance from the realm.
realm.Remove(dog);
// Discard the reference.
dog = null;
});

次のコードは、Realm からコレクションを削除する方法を示しています。

realm.Write(() =>
{
// Find dogs younger than 2 years old.
var puppies = realm.All<Dog>().Where(dog => dog.Age < 2);
// Remove the collection from the realm.
realm.RemoveRange(puppies);
});

場合によっては、親オブジェクトを削除するときに削除したい依存関係オブジェクトがあることもあります。 これを連鎖削除と呼びます。 Realm は依存しているオブジェクトを削除しません。 オブジェクトを自分で削除しない場合、Realm 内で孤立したままになります。 これが問題になるかどうかは、アプリケーションのニーズによって異なります。

現在のところ、依存関係オブジェクトを削除する最良の方法は、親オブジェクトを削除する前に、依存関係を反復処理して削除することです。

次のコードは、最初に Eli の犬のすべてを削除し、次に Eli を削除するという連鎖削除を実行する方法を示しています。

realm.Write(() =>
{
// Remove all of Ali's dogs.
realm.RemoveRange(ali.Dogs);
// Remove Ali.
realm.Remove(ali);
});

Realm は、Realm からのRealm タイプのすべてのインスタンスの削除をサポートしています。

次のコードは、Realm からすべてのドキュメント インスタンスを削除する方法を示しています。

realm.Write(() =>
{
// Remove all instances of Dog from the realm.
realm.RemoveAll<Dog>();
});

すべてのオブジェクトを Realm から削除することができます。 これは Realm のスキーマには影響しません。 これは、プロトタイプ作成中に Realm をすばやくクリアするのに便利です。

次のコードは、Realm からすべてを削除する方法を示しています。

realm.Write(() =>
{
// Remove all objects from the realm.
realm.RemoveAll();
});

戻る

Update