2014-08-31 4 views
1

먼저 OOP 개념에 익숙하지 않다고 말하고 싶지만이 OOP 세계에서 생존하기 위해 이것을 배우고 싶습니다. :) 그래서, 난 그냥 프로젝트, 데이터 항목 asp.net 웹 양식 응용 프로그램이 있습니다. 이 앱을 3 개 레이어 (첫 번째)로 분리하고 싶습니다. 데이터베이스를 제 위치에 두었습니다. 이제는 레이어간에 객체 상태를 교환하기 위해 내 데이터베이스를 만듭니다. 클래스의 조회 테이블 값을 어떻게 반영해야할지 모르십니까?! 의 나는 다음과 같은 테이블이 있다고 가정 해 봅시다 :OOP 데이터베이스 조회 테이블

Patient table 

PatientID int 
PatientName varchar 
PatientStateID int (fk States table) 

State table 

StateID int (pk) 
StateName varchar 

지금 내가 할 클래스 DTO 내가 아는이 들어

public class Patient 
{ 
public int PatientID {get; set;} 
public string PatientName{get;set} 
// and now the problem 
How to represent State property? 
public int PatientStateID {get; set;} 
public string StateName {get; set} 
} 

, 난 내가 SQL에 proc 디렉토리를 저장 한 환자가 가입하고 반환해야하는 모든 필요한 데이터. 하지만 괜찮습니까? 아니면 해당 조회 테이블에 대한 클래스를 만들어야합니까?

도움 주셔서 감사합니다.

public class Patient 
{ 
    public string Name {get; set;} 
    public State MyState {get; set;} 
} 

편집가 : 올바른 구문을

를 제공하기 위해 세터 절을 변경 그리고 당신이 원하는 정보를 얻기 위해 예를 들어 Patient.MyState.Statename을 참조 할 수 있습니다

답변

2

은 당신과 같이 주를 참조 할 수 있습니다.

행운을 빈다.

+0

답변 해 주셔서 감사합니다. 그래서 내 상태 클래스에서 나는 (Patient.MyState = new State (Patient.StateID);) 이런 식으로 초기화 된 상태 이름을 retruns하는 메소드 (생성자)가 필요하다. Rememer 나는 OOP를 처음 사용합니다! – gligom

+0

@gligom 내가 제안한 방법으로 Patient 클래스를 정의하면 State를 인스턴스화하는 순간에 State가 인스턴스화됩니다. 코드에서이 구조와 단계를 시도해보십시오. 당신은 그것이 일어나는 것을 볼 것입니다. (해당되는 경우 제 대답을 정확하게 기재하십시오) –