0
我有以下几点:实体框架代码优先:一对一的关系不产生外键
public abstract class EntityBase
{
[Key]
public int Id { get; set; }
public DateTime? CreatedTime { get; set; }
public DateTime? ModifiedTime { get; set; }
}
public class AnalysisFile : EntityBase
{
public AnalysisFile()
{
DateAdded = DateTime.Now;
}
public string SourceFolder { get; set; }
public string Filename { get; set; }
public DateTime DateAdded { get; set; }
public long FileSize { get; set; }
public Document Document { get; set; }
}
public class Document : EntityBase
{
public Document()
{
Publish = true;
}
public string Name { get; set; }
public int AreaId { get; set; }
public int SchoolId { get; set; }
public int Year { get; set; }
public long FileSize { get; set; }
public AnalysisFile AnalysisFile { get; set; }
public School School { get; set; }
public Area Area { get; set; }
public bool Publish { get; set; }
}
modelBuilder.Entity<Document>().HasRequired(x => x.AnalysisFile);
modelBuilder.Entity<AnalysisFile>().HasOptional(x => x.Document);
我的问题是,EF不会出现创造AnalysisFile和文档之间的关系的外键,很我在这里错过了什么,或者这是预期的行为?
我也尝试在两个类上创建AnalysisFileId和DocumentId属性,但是当我这样做时,它们不会使用任何ID填充。
另一个问题也是:我如何确保Document对AnalysisFile进行级联删除?
我确实想知道共享主键,非常感谢:-) – Mantorok