ASP.NET MVC プロジェクトには 2 つのモデルがあります。テストデータを含めるためにシードするときは、次のことを行います。
context.Dialogs.Add(new Dialog
{
Id = 1,
Chapter = 1,
Index = 0,
DialogColor = "default-color",
DialogText = "blah blah!",
Character = "none",
Transition = false,
Fade = true,
Timer = 0,
Actions = new List<Action>
{
new Action { ActionText = "--continue--", ActionLink = 1, Id=1 }
}
});
これにより、ダイアログテーブルにレコードが保存されますが、アクションは保存されません。最初にダイアログを保存してからアクションを追加できることはわかっていますが、上記のようにすべてインラインで追加できるようにしたいですか?
ダイアログ モデル:
public class Dialog
{
[Key]
public int Id { get; set; }
public int Chapter { get; set; }
public int Index { get; set; }
public string DialogColor { get; set; }
public string DialogText { get; set; }
public string Character { get; set; }
public bool Transition { get; set; }
public bool Fade { get; set; }
public int Timer { get; set; }
public virtual IEnumerable<Action> Actions { get; set; }
}
アクション モデル:
public class Action
{
[Key]
public int Id { get; set; }
public string ActionText { get; set; }
public int ActionLink { get; set; }
public Dialog Dialog { get; set; }
}