同じ連絡先に複数の電話番号が必要な場合。これは 1対多の関係の船です。つまり、電話番号を保存するために別のテーブルが必要です
PhoneNumber
この構造のような名前の新しいテーブルを作成します
PHONE_NUMBER_ID (INT) PRIMARY KEY
PHONE_NUMBER (VARCHAR)
CONTACT_ID (INT) - Foreign key to the Contact table
サンプルデータは次のようになります
PHONE_NUMBER_ID PHONE_NUMBER CONTACT_ID
--------------- ------------ ----------
1 734578956 1
2 987546563 2
3 987645643 2
これは、連絡先 1 には 1 つの電話番号があり、連絡先 2 には 2 つの電話番号があることを意味します。
Collection
次に、PhoneNumbers を格納するための Contact クラスのプロパティが必要です。
public class Contact
{
public int ID { set;get;}
public string FirstName { set;get;}
//Other contact related proerpties
IList<string> PhoneNumbers { set;get;}
public Contact()
{
if(PhoneNumbers==null)
PhoneNumbers=new List<string>();
}
}