2014-08-31 81 views
1

首先,我想告訴你,我是OOP概念的新手,但爲了生存到這個OOP世界,我喜歡學習這一點:)。 所以,我只是有一個項目,數據錄入asp.net web窗體應用程序。我想分開這個應用程序在3層(第一次)。 我有我的數據庫到位,現在我讓我的dto's爲了交換圖層之間的對象狀態。 我不知道如何代表我的類中的查找表值! 比方說,我有如下表: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,使聯接,並返回所有需要的數據。 但可以嗎?或者我還需要爲查找表做類?

非常感謝您的幫助!

回答

2

你可以參考國家,像這樣:

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

編輯:改變了二傳手條款給予正確的語法

而且你可以參考Patient.MyState.Statename例如以獲得所需的信息。

祝你好運!

+0

謝謝你的回答!所以在我的狀態類中,我需要一個方法(構造函數),以這種方式重新初始化狀態名Patient.MyState = new State(Patient.StateID);? Rememer我是OOP的新手! – gligom 2014-09-02 16:58:43

+0

@gligom當您按照我的建議定義Patient類時,狀態將在您實例化Patient時進行實例化。只要嘗試這個構造和步驟,即使代碼。你會看到它發生。 (如果適用,請將我的答案標記爲正確) – 2014-09-02 22:32:12