根据example添加这样的新实体图
using (var context = new BloggingContext())
{
var blog = new Blog
{
Url = "http://blogs.msdn.com/dotnet",
Posts = new List<Post>
{
new Post { Title = "Intro to C#" },
new Post { Title = "Intro to VB.NET" },
new Post { Title = "Intro to F#" }
}
};
context.Blogs.Add(blog);
context.SaveChanges();
}
在我的模型中,有一个资源以及通过导航属性ScheduleWork与之关联的实体。
public class Resource : ObservableObject
{
public int ResourceId { get; set; }
public ScheduleWork ScheduleWork { get; set;};
}
public class ScheduleWork : ObservableObject
{
public int ScheduleWorkId { get; set; }
public double MondayHours { get; set; }
public double TuesdayHours { get; set; }
public double WednesdayHours { get; set; }
public double ThursdayHours { get; set; }
public double FridayHours { get; set; }
public double SaturdayHours { get; set; }
public double SundayHours { get; set; }
public ScheduleWork()
{
MondayHours = 8;
TuesdayHours = 8;
WednesdayHours = 8;
ThursdayHours = 8;
FridayHours = 8;
SaturdayHours = 0;
SundayHours = 0;
}
}
在创建资源的新实例时,我需要自动创建ScheduleWork实例。我以各种方式尝试过: 1.Всвойственавигации
public ScheduleWork ScheduleWork { get; set;} = new ScheduleWork();
public Resource()
{
ScheduleWork = new ScheduleWork();
}
ObservableCollection<Resource> Resource;
DbAppContext dbAppContext;
dbAppContext = new DbAppContext();
Resource = dbAppContext.Resource.Local.ToObservableCollection();
dbAppContext.Resource.Load();
Resource.Add(new Resource(){ScheduleWork = new ScheduleWork()});
dbAppContext.SaveChanges();
ObservableCollection<Resource> Resource;
DbAppContext dbAppContext;
dbAppContext = new DbAppContext();
Resource = dbAppContext.Resource.Local.ToObservableCollection();
dbAppContext.Resource.Load();
Resource.Add(new Resource(){});
Resource[0].ScheduleWork = new ScheduleWork();
dbAppContext.SaveChanges();
只有在将更改保存到ScheduleWork表中的数据库之后的4种情况下,才添加新记录。这是为什么?创建资源的每个实例时,如何在没有其他代码的情况下进行添加?