实体框架继承 - 确定对象类型

时间:2011-01-18 18:44:38

标签: entity-framework-4

我有一个类似于此的实体框架模型:

  1. 员工(继承人)
  2. 联络(继承人)
  3. 我可以添加,查询(使用OfType)和更新员工和联系人没有问题。但是,我无法确定Person对象的类型。比如说:

    var person = entities.People.Single(p => p.Id == 5); 
    

    我该怎么做:

    if (person.IsEmployee){
    //do something
    } else if (person.IsContact) {
    // do something else
    }
    

    或者,我可以满足于此:

    if (person.IsOfType<Employee>()){
    // do something
    } else if (person.IsOfType<Contact>()) {
    // do something else
    }
    

    有办法吗?

1 个答案:

答案 0 :(得分:11)

if (person is Employee){
//do something
} else if (person is Contact) {
// do something else
}