2011-05-14 1 views
4

MVC3 및 SQL Server 2008을 사용하여 패밀리 트리 웹 사이트 (개인용)를 만들려고합니다.하지만 MVC3에 익숙하지 않습니다. Razor & Entity Framework) SQL Server에 대해 잘 알고 있습니다. WebForms를 사용하여 웹 사이트를 개발하는 데 나는 매우 좌절감을 느낍니다.이 기술에 대해 잘 알고 있기 때문입니다.ASP.NET MVC 및 SQL Server를 사용하여 가계도를 구현하는 가장 좋은 방법은 무엇입니까

내 질문은 다음 두 가지 방법으로 나뉘어 있지만 MVC3과 Entity Framework를 사용하여 구현하는 방법에 매달 렸습니다. 1) 개인과 개인 간의 관계를 저장하는 브리지 테이블에 대한 정보가 들어있는 개인 테이블 사용 Person 테이블에서 보유합니다.

2) 하나의 테이블에 모든 정보를 저장하는 중첩 세트.

누군가가 제발 시작할 수있는 방법에 대한 방향을 알려주세요. 가능하면 중첩 세트 방식을 사용하여 계층 구조를 읽는 것이 가능한 한 빨리 수행하는 것이 좋을 것입니다. 사이트.

충분한 정보를 제공해 주셨으면합니다. 더 자세한 정보가 필요하면 제게 물어보십시오.

+1

일반적으로 가계도는 실제로 나무와 유사하지 않습니다. (친척 간의 세대 간 결혼을 생각해 보라. 결혼과는 아무런 관련이없는 아이들의 생각, 나무보다 네트워크에 더 가깝다.) 중첩 된 세트가 그것을 수용 할 수 있는지를 원할 수도있다. –

답변

2

데이터 저장소에서 데이터를 구성하는 방법은 MVC와는 거의 관련이 없습니다. 모든 데이터 액세스는 M 부분 (모델)에서 추상화되며 백엔드에서 구현되는 방식은 중요하지 않습니다. 모델 계층은 다를 수 있지만 여전히 컨트롤 (C 부분)과 동일한 계층을 나타냅니다.

이것은 MVC와 같은 시스템을 사용하는 이유입니다. MS SQL을 사용하여 MVC 웹 사이트를 구현 한 다음 (예를 들어) 나중에 Oracle로 이동할 수 있습니다. 변경해야 할 유일한 코드는 모델의 코드입니다. MVC는 관심사의 분리를 허용합니다.

질문에 대답하십시오. 가장 효과가 있다고 생각하는 방식으로 SQL 디자인을 구현하십시오. 그런 다음 모델이 작성되면 컨트롤러와 뷰에 필요한 인터페이스로 "변환"됩니다.


은 코다 - 나는 개인적으로 두 개 이상의 테이블을 사용하여이 데이터를 구현하기 위해 쉽게 생각 나는 쿼리가 명확하게 생각합니다. 귀하의 마일리지가 다를 수 있습니다.