데이터 삭제 - .NET SDK
Atlas Device SDK는 더 이상 사용되지 않습니다. 자세한 내용은 지원 중단 페이지 를 참조하세요.
객체 삭제
예시
다음 코드는 해당 영역에서 하나의 객체를 삭제하는 방법을 보여줍니다.
realm.Write(() => { // Remove the instance from the realm. realm.Remove(dog); // Discard the reference. dog = null; });
여러 객체 삭제
예시
다음 코드는 영역에서 collection을 삭제하는 방법을 보여줍니다.
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은 사용자를 대신하여 종속 객체를 삭제하지 않습니다. 객체를 직접 삭제하지 않으면 해당 객체는 영역에서 고아 상태로 유지됩니다. 이것이 문제가 되는지 여부는 애플리케이션의 요구 사항에 따라 다릅니다.
현재 종속 객체를 삭제하는 가장 좋은 방법은 상위 객체를 삭제하기 전에 종속성을 반복하고 삭제하는 것입니다.
예시
다음 코드는 먼저 Ali의 개를 모두 삭제한 다음 Ali를 삭제하여 연쇄 삭제를 수행하는 방법을 보여 줍니다.
realm.Write(() => { // Remove all of Ali's dogs. realm.RemoveRange(ali.Dogs); // Remove Ali. realm.Remove(ali); });
특정 유형의 모든 객체 삭제
Realm은 영역에서 Realm 유형 의 모든 인스턴스 삭제를 지원합니다.
예시
다음 코드는 영역에서 모든 Dog 인스턴스를 삭제하는 방법을 보여줍니다.
realm.Write(() => { // Remove all instances of Dog from the realm. realm.RemoveAll<Dog>(); });
Realm의 모든 객체 삭제
영역에서 모든 객체를 삭제할 수 있습니다. 이는 영역의 스키마에 영향을 주지 않습니다. 이는 프로토타입을 제작하는 동안 영역을 빠르게 정리할 때 유용합니다.
예시
다음 코드는 영역에서 모든 것을 삭제하는 방법을 보여줍니다.
realm.Write(() => { // Remove all objects from the realm. realm.RemoveAll(); });