Page History
...
- 설치된 서버 Mazor버전과 맞춰서 패키지 설치
Database생성
- 몽고DB와 유사하게 스키마리스 DB이기때문에 DDL코드가 필요로 하지 않습니다.
...
- 엔티티를 관리해야할 부담을 덜수 있습니다.
- 처음이용할때 DBManageMent Tool을 한참 찾았는데~ 웹에 통합되어 대부분의 관리기능을 웹을 통해 가능합니다. - 로컬설치버전 기준
Repository 코드
| Code Block | ||
|---|---|---|
| ||
public class Member
{
public string Id { get; set; } // RavenDB는 기본적으로 Id를 문서 키로 사용
public string Name { get; set; }
public string Email { get; set; }
public int Age { get; set; }
}
public class MemberRepository
{
private readonly IDocumentStore _store;
public MemberRepository(IDocumentStore store)
{
_store = store ?? throw new ArgumentNullException(nameof(store));
}
public void AddMember(Member member)
{
using (var session = _store.OpenSession())
{
session.Store(member);
session.SaveChanges();
}
}
public Member GetMemberById(string id)
{
using (var session = _store.OpenSession())
{
return session.Load<Member>(id);
}
}
public void UpdateMember(Member member)
{
using (var session = _store.OpenSession())
{
var existingMember = session.Load<Member>(member.Id);
if (existingMember != null)
{
existingMember.Name = member.Name;
existingMember.Email = member.Email;
existingMember.Age = member.Age;
session.SaveChanges();
}
}
}
public void DeleteMember(string id)
{
using (var session = _store.OpenSession())
{
var member = session.Load<Member>(id);
if (member != null)
{
session.Delete(member);
session.SaveChanges();
}
}
}
} |
...
