Я знаю, что другие писали об этом, но я не могу найти ответ, который, кажется, соответствует моему вопросу. Хотя я очень новичок в .net, так что, может быть, я чего-то не понимаю.
Мой сайт имеет объект проекта, который принадлежит конкретному пользователю. В проекте есть другая модель для дополнительной информации, которую могут добавить другие пользователи.
Мои модели похожи:
Проект
- Владелец проекта FK
- Другие вещи
Информация
- Проект FK
- Владелец информации FK
- Другие вещи
Но я получаю ошибку Ссылочные отношения приведут к циклической ссылке, которая не допускается.
Я думаю, это расстроено, что у меня есть fk для пользователя и в проекте, и в информации. Но пользователи разные, поэтому я не могу от них избавиться. Есть ли способ сказать это?
Опять же, я новичок в .net, так что я надеюсь, что это не глупый вопрос. Я родом из Джанго, если это поможет с объяснением.
Код:
public class Information
{
[HiddenInput(DisplayValue = false)]
public int InfoID { get; set; }
//user
public virtual User User { get; set; }
[Required(ErrorMessage = "This field is required.")]
public int UserID { get; set; }
//project
public virtual Project Project { get; set; }
[Required(ErrorMessage = "This field is required.")]
public int ProjectID { get; set; }
}
public class Project
{
[HiddenInput(DisplayValue = false)]
public int ProjectID { get; set; }
//user
public virtual User User { get; set; }
[Required(ErrorMessage = "This field is required.")]
public int UserID { get; set; }
}
Я удалил все остальные нереляционные поля, так как они не важны.