이것은보다 일반적인 질문이며, 실제로 이것이 내가 와플로드로 밝혀지면 실제로 사과 할 것을 100 % 요구하지 않습니다!Linq to SQL 도메인 모델
ASP.NET MVC2에서 웹 사이트를 만들고 있는데 내 도메인 모델을 설정하고 있습니다. 나는 이 인 C#의 테이블 사이의 관계를 설정하는 것으로 보이는 책을 읽고 있는데, 데이터베이스와 반대되는 것입니다 (아니면 내가 잘못 읽은 것입니까?).
그렇다면 올바른 방법입니까?
[Table(Name="Users")]
public class User
{
[Column(IsPrimaryKey=true, IsDbGenerated=true, AutoSync=AutoSync.OnInsert)]
public int ID{get;set;}
public string Name{get;set;}
}
[Table(Name="Posts")]
public class Post
{
[Column(IsPrimaryKey=true, IsDbGenerated=true, AutoSync=AutoSync.OnInsert)]
internal int ID{get;set;}
internal int MemberID {get;set;}
public string Body {get;set;}
internal EntityRef<User> _user;
[Association(ThisKey="MemberID", storage="_user")]
public User User
{
get{ return _user.Entity; }
internal set{ _member.Entity = value; ID = value.ID; }
}
}
EntityRef 이것은 MSSQL 서버의 관계를 생성하기위한 여분이다
예를 들어, 아래의 2 개의 도메인 모델 수업을? C#에서 엔터티 간의 관계를 정의하는 아이디어는 데이터베이스 자체가 아닌 것입니까?
조금 혼란 스러웠고 내가 말했듯이 나는 여기서 벗어날 수 있었다.
"웹 사이트 만들기"(즉, 처음부터) - 왜 오래된 기술로 시작합니까? Entity Framework를 사용하는 것이 좋습니다. 당신의 코드에서 첫 번째 또는 첫 번째 모델을 사용하고 DB를 생성 할 수 있기 때문에 (DB를 먼저 수행 할 필요가 없습니다.) – RPM1984
Linq to SQL과 Domain Model은 함께 사용해서는 안되는 두 단어입니다. Linq to SQL은 지속성 모델 만 수행하며 DDD에 필요한 많은 고급 시나리오를 실제로 매핑 할 수 없습니다. – jfar