2
我的表中有一個可爲空的int作爲fk,如下所示。我做了FK int ?.但是,如果我試圖用空值保存一個參考約束錯誤?發生參照完整性約束違規Nullable FK
[Table("Tests")]
public class Tests : BaseEntity
{
[MaxLength(255)]
public virtual string TestName { get; set; }
public virtual int? ProjectId { get; set; }
[ForeignKey("ProjectId")]
public virtual Project Project { get; set; }
}
[Table("Project")]
public class Project : BaseEntity
{
[Required, MaxLength(100)]
public virtual string Name { get; set; }
[Required, MaxLength(200)]
public virtual string Type { get; set; }
}
public class BaseEntity
{
[Key, Required]
public virtual int Id { get; set; }
[Required]
public virtual DateTime CreatedDate { get; set; }
}
_testsRepo.InsertOrUpdateAndGetId(test);
例外:
System.InvalidOperationException:參照完整性約束髮生 違規: 'Project.Id' 的一端上的屬性值(S)的關係的 不在另一端匹配'Tests.ProjectId'的屬性值 。
可以顯示完整的異常? – Sampath
你也可以顯示'Project'模型的代碼嗎? – Sampath
它是我的理解,使fk一個int?應該是所有必需的 – MicroMan