Я пытаюсь настроить проект, используя Entity Framework 4, POCO и Code-Only.
Возможно ли в рамках сущности для типа навигационного свойства быть интерфейсом?
У меня есть класс "Задача". Задача может быть назначена пользователю или группе, каждая из которых представлена отдельным классом и хранится в отдельных таблицах. Классы выглядят примерно так:
public class User : IAssignable
{
public string Name { get; set; }
public int ID { get; set; }
public string Email { get; set; }
public string Password { get; set; }
}
public class Group : IAssignable
{
public string Name { get; set; }
public int ID { get; set; }
public string Manager { get; set; }
public string Department { get; set; }
}
public class Task
{
public string Title { get; set; }
public DateTime DueDate { get; set; }
public string Details { get; set; }
public IAssignable AssignedTo { get; set; }
}
Есть ли способ использовать свойство AssignedTo как свойство навигации в структуре сущностей? Я предполагаю, что для EF должен быть какой-то тип дискриминатора, чтобы знать, нужно ли ему искать в таблице "Пользователи" или в таблице "Группы", но я могу выяснить соответствие с помощью Code-Only или EDMX.