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