我当前首先使用SQL Server使用EF代码。
这是我的代码:
public class Article
{
public Article(string title, ValidPeriod published)
{
this.Title = title;
this.Published = published;
}
public int Id { get; set; }
public string Title {get;set;}
public ValidPeriod Published { get; set; }
}
public class ValidPeriod()
{
public DateTime From { get; set; }
public DateTime To { get; set; }
}
我能够创建一个文章类的实例,但是当我尝试坚持使用Null Viralperiod的文章时,我将获得"无效成员的零值"。我该如何解决此问题,即。如何坚持一个零类。我没有将有效的period声明为复杂的对象。
一种可能的解决方案是首先定义ValidPeriod
实体的主键Id
如下:
public int Id { get; set; }
然后,将明确的无效外键添加到Article
Entity(int?
为nullable int
):
public int? ValidPeriodId { get; set; }
最终使用Fluent API定义Article
实体的关系:
HasOptional(c => c.Published)
.WithMany()
.HasForeignKey(c => c.ValidPeriodId);