1
所以我有一個名爲聯繫的EF4類,即具有基本字段,如ID,姓名,姓氏等得到繼承的對象從EF4類
現在我想創建另一個2類稱爲SelectedUser和LoggedUser基本上從Contact類繼承,但他們有其他方法。
所以我創建了一個名爲SelectedContact類,如下所示: -
public partial class SelectedContact : Contact
{
methods..........
}
我有一個問題,雖然,比如我想中檢索一個SelectedContact。所以基本上我在做什麼是
Contact contact = db.Contacts.FirstOrDefault(u => u.id_contact == contactId);
SelectedContact selContact = (SelectedContact)contact;
這不起作用,告訴我,我不能從聯繫人轉換爲SelectedContact。
我也試過
Contact contact = db.Contacts.FirstOrDefault(u => u.id_contact == contactId);
SelectedContact selContact = contact as SelectedContact;
但這返回一個空selContact。
我知道我可以通過一個移動的領域之一,即: -
SelectedContact selContact = new SelectedContact();
selContact.id_contact = contact.id_contact;
但是我相信有一種更好的方式來做到這一點。
任何幫助非常感謝!
非常感謝您的幫助和時間。
感謝您的回覆拉迪斯拉夫,所以基本上我必須手動移動值?就像我目前正在做的那樣 – Johann 2012-04-02 08:51:59
是的,因爲繼承不是您的問題的好設計方法。決定是否選擇聯繫不應該被建模爲繼承,而是作爲一個屬性。 – 2012-04-02 09:13:12
好的,謝謝你的幫助拉迪斯拉夫 – Johann 2012-04-02 09:17:26