자마린에서 realm 을 사용하는 법.
일단 안드로이드 프로젝트 하나 만든다.
그런다음 "NuGet 패키지 관리자" 에서...
"Realm" 을 설치한다.
이때, "Realm" 만 설치하면 필요한 관련 항목까지 다 설치해준다.
대충 14개 정도 설치 되는것 같음.
이걸로 Realm 설치 끝.
설치를 했으니 이제 사용을 해보자.
사용할 데이터 셋을 만들어야 한다. 그냥 DB 의 Table 이라 생각하면 된다.
새 항목으로 가서...
클래스를 하나 생성.
클래스 명은 아무거자 자신이 원하는 명칭으로 하면 되고...
일반적인 DB 의 테이블을 만들듯이, 데이터 셋을 정의 하면 된다.
주의 할점은 클래스 생성시 "RealmObject" 를 상속 받아야 한다는 것.
셋을 만들었으니, 이제 데이터 등록.
var realm = Realm.GetInstance()
으로 DB 인스턴스를 생성하고.
realm.Add()
으로 데이터를 넣으면 되고,
realm.All<지정데이터셋>()
으로, 데이터를 조회 하면 된다.
using Android.App; using Android.Widget; using Android.OS; using Realms; using System.Collections.Generic; using System.Linq; namespace App5 { [Activity(Label = "App5", MainLauncher = true, Icon = "@drawable/icon")] public class MainActivity : Activity { protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); using (var realm = Realm.GetInstance()) { // 개별 입력 방식 realm.Write(() => { realm.Add(new Users { id = 777, name = "son10001" }); }); // 일괄입력 방식 var listUsers = new List<Users>(); listUsers.Add(new Users { id = 1, name = $"son10001 - 1" }); listUsers.Add(new Users { id = 2, name = $"son10001 - 2" }); listUsers.Add(new Users { id = 3, name = $"son10001 - 3" }); listUsers.Add(new Users { id = 4, name = $"son10001 - 4" }); listUsers.Add(new Users { id = 5, name = $"son10001 - 5" }); foreach (var user in listUsers) { realm.Write(() => { realm.Manage(user); }); }; var numInRealm = realm.All<Users>(); for (var i = 0; i < numInRealm.Count(); i++) { Users newPerson = numInRealm.ElementAt(i); System.Diagnostics.Debug.WriteLine(newPerson.name); } } } } }
... 이렇게.... 이렇게 하고 실행해 보면...
이렇게 입력한 데이터가 출력되는 것을 볼 수 있다.
DB 에 데이터가 쌓이므로 여러번 실행하면 계속해서 데이터가 중복으로 쌓이는 것을 볼 수 있다.