У меня есть класс, который наследует базовый класс, с которым связан другой класс.
Пример:
- Базовый класс: Животное
- Подкласс 1: Собака
- Подкласс 2: Кошка
- СвязанныйТаблица «многие»: Прививки
- У собаки может быть несколько прививок.Это реализовано в виде Списка .
- У кошки может быть несколько прививок.
- У записи прививок может быть только одно животное, связанное с ней.
- Вакцинация нене знаю, связано ли это с собакой или кошкой.(Собаки и кошки используют бесконтактные идентификаторы GUID.)
Таблицы животных нет;Животное - это абстрактный класс.Но вакцинация знает только о животных, а не о собаках.(EF, однако, знает об обоих.) Мои библиотеки классов разделены так, что Animal и Vaccination находятся в основной библиотеке, а Dog - в другой библиотеке, которая ссылается на базовую библиотеку.
При использовании Entity Framework Code Firstтаблица вакцинаций получает дополнительный столбец: Dog_ID, так как явное объявление List класса Dog создает вывод.Таким образом, этот столбец отображает запись о прививках собаке.Это было бы хорошо, за исключением того факта, что я хочу использовать этот дополнительный столбец для нескольких типов животных.Так, например, вместо того, чтобы иметь Dog_ID и Cat_ID, я хотел бы иметь Animal_ID, который может присоединиться либо к Dog, либо к Cat.
Поскольку Animal является абстрактным и не имеет таблицы DB, могу ли я выполнить это?возможно с беглым заявлением и / или объявлениями свойств / атрибутов?