Добавление модели в базу данных, которая имеет виртуальные отношения - PullRequest
1 голос
/ 07 апреля 2019

У меня есть такой сценарий, где у меня есть модель с именем Category, которая имеет отношение «один к одному» с другой моделью с именем Question.Ниже приведен код для обеих моделей:

Категория:

public class Category
{
    [Key]
    [Required]
    public int Id { get; set; }

    [Required]
    public int QuestionRef { get; set; }

    [Required]
    public string Name { get; set; }

    [Required]
    public DateTime Timestamp { get; set; }

    public virtual Question Question { get; set; }
}

Вопрос:

public class Question
{
    [Required]
    [Key]
    public int Id { get; set; }

    [Required]
    public int CategoryRef { get; set; }

    [Required]
    public int QuestionLevel { get; set; }

    [Required]
    public string QuestionText { get; set; }

    [Required]
    public DateTime Timestamp { get; set; }

    public virtual Category Category { get; set; }
}

Фрагмент из OnModelCreating:

modelBuilder.Entity<Category>().HasOne(x => x.Question).WithOne(x => x.Category).HasForeignKey<Question>(x => x.CategoryRef);
modelBuilder.Entity<Question>().HasOne(x => x.Category).WithOne(x => x.Question).HasForeignKey<Category>(x => x.QuestionRef);

Кажется, я столкнулся с проблемой, которую не могу понять, как ее решить.По сути, я понятия не имею, как я могу вставить это отношение в базу данных (SQL Server).

Вопрос в том, должен ли я неявно писать в хранилище, что

NewCategory.Question = QuestionInput;

, или он автоматически генерирует себя, учитывая отношения, которые я подразумевал в OnModelCreating?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...