Это мое первое сообщение, поэтому, пожалуйста, извините меня, если я не буду следовать правильной процедуре. Также обратите внимание, что я только начал изучать EF-Code First на этой неделе, поэтому я очень новичок в этом и не совсем понимаю все решения в stackoverflow.Таблица внешних ключей указывает на одну из двух таблиц
Проблема: У меня есть три класса: пользователь, арендатор и приборная панель.
Панель приборов может быть только для Пользователя или Арендатора. Другими словами, у пользователя есть панель инструментов, а арендатор имеет панель инструментов. Это всегда взаимно однозначное отношение между User и Dashboard. То же самое касается Tenant and Dashboard.
Как можно было бы создать эти отношения?
Я прочитал много методов аннотации данных, а также быстрые методы api, но я должен признать, что я все еще ошеломлен, как это сделать.
public class User
{
[Key]
public int ID { get; set; }
public int TenantId { get; set; }
public virtual Tenant Tenant { get; set; }
}
public class Tenant
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
}
public class Dashboard
{
[Key]
public int DashboardId { get; set; }
public string Description { get; set; }
}
Вы говорите, что пользователь имеет отношение один к одному с приборной панели. Но у вашего пользовательского класса есть свойство навигации для арендатора и ничего для панели управления –
Да, это правда, это всего лишь пример двух класов. Я удалил аннотации данных, так как они не работали. Kinda надеялся, что я могу привести пример «незавершенных классов», а затем кто-то может помочь мне в том, как «заполнять их». Надеюсь, это имеет смысл. – SlapChip
В вашем случае пользователь и арендатор будут иметь внешний ключ панели приборов. Учитывая, что данные таблиц таблиц были созданы до пользователей. – Pavvy