Аннотация элемента данных структуры сущности внешнего ключа без свойства навигации

c# data-annotations entity-framework entity-framework-6 foreign-keys

Вопрос

У меня есть следующее определение таблицы:

public partial class ClientClassification
{
    [Key, Column(Order = 0)]
    public long ClientId { get; set; }

    [Key, Column(Order = 1)]
    public ClientClassificationEnum ClientClassificationType { get; set; }

    [ForeignKey("ClientId")]
    public virtual Client Client { get; set; }
}

ClientId - это внешний ключ в таблице Client . Это отношение много к одному (клиент может иметь много классификаций). Можно ли каким-либо образом опустить свойство навигации Client, но все же объявить это отношение внешнего ключа? Итак, что-то вроде:

public partial class ClientClassification
{
    [Key, Column(Order = 0)]
    public long ClientId { get; set; }

    [Key, Column(Order = 1)]
    public ClientClassificationEnum ClientClassificationType { get; set; }

    [ForeignKey("ClientId")]
    public virtual Client Client { get; set; }
}

Популярные ответы

Поскольку между «классами» не будет никакой связи, и все же вы хотите создать отношения на dtaabase, я бы использовал сценарий миграции для этого (и никаких комментариев к классу).

Если вы по-прежнему хотите иметь аннотацию к классу (по какой-то причине, которую я не могу себе представить сейчас), вы можете затем объявить защищенный атрибут Client (таким образом вы объявите свойство навигации Client, но оно не будет доступный для всех, но унаследованных классов).




Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему