웹 응용 프로그램에서 사용할 개체 모델을 설계하고 있습니다.다양한 데이터베이스를 사용하여 구현 된 C# 인터페이스를 만드는 방법
모델에는 사용자가 포함되어 있습니다. 각 사용자마다 세션이 있습니다. 각 세션에는 해당 세션의 레코드 및 이벤트가 포함됩니다. 내가해야 할 일은 데이터를 유지하는 것입니다 (mongodb 또는 이와 유사).이 코드를 내 데이터베이스의 API로 유지하려면 어떻게해야합니까? API를 사용하는 소비자는이 코드를 저장하는 방법을 알 필요가 없습니다. 그리고 그것은 똑같이 "마법처럼"작용할 것입니다.
감사합니다.
다음은 현재 사용중인 디자인입니다.
public class User
{
public int id {get; set;}
public DateTime EnrollDate { get; set; }
public string Udid { get; set; }
public string Email { get; set; }
public string UserName { get; set; }
public string Password { get; set; }
public HashSet<Session> Sessions { get; set; }
public HashSet<Session> GetSessions()
{
if (Sessions == null)
{
Sessions = new HashSet<Session>();
}
return Sessions;
}
}
public class Session
{
public string SessionId { get; set; }
public DateTime Time { get; set; }
public JObject Parameters { get; set; }
private List<Event> Events { get; set; }
private List<Record> Records { get; set; }
public List<Event> GetEvents()
{
if (Events == null)
{
Events = new List<Event>();
}
return Events;
}
public List<Record> GetRecords()
{
if (Records == null)
{
Records = new List<Record>();
}
return Records;
}
}
public class Record
{
public Record()
{
RecordId = Guid.NewGuid().ToString();
CreatedAt = DateTime.Now;
}
public string Name { get; set; }
public string RecordId { get; set; }
public DateTime CreatedAt { get; set; }
public DateTime Time { get; set; }
public JObject Data { get; set; }
}
public class Event
{
public Event()
{
EventId = Guid.NewGuid().ToString();
CreatedAt = DateTime.Now;
}
public string EventId { get; set; }
public string Name { get; set; }
public DateTime Time { get; set; }
private DateTime CreatedAt { get; set; }
public JObject Parameters { get; set; }
}
선택할 수있는 다양한 ORM이 있습니다. 어떤 (Entity Framework, Hibernate, Dapper, ...)를 보았습니까? –
엔티티는 SQL을 지향합니다. 더 일반적인 질문입니다. –