我在使用Entity Framework时遇到了一些关联问题。虽然还有一些关于我无法使其发挥作用的其他帖子。
public class BaseJobOffer : IEntity
{
[Key, ForeignKey("File")]
public int Id { get; set; }
public string Name { get; set; }
public int FileId { get; set; }
public File File { get; set; }
}
public class File
{
public int Id { get; set; }
public string FileName { get; set; }
public string ContentType { get; set; }
public byte[] Content { get; set; }
public Enums.FileType FileType { get; set; }
public int JobOfferId { get; set; }
public virtual BaseJobOffer JobOffer { get; set; }
}
错误说: 运行所选代码生成器时出错:
'无法检索Model.JobOffer的元数据'。无法确定 类型之间关联的主要结束 'Model.BaseJobOffer'和'Model.File'。这个的主要目的 必须使用以下任一方式显式配置关联 关系流畅的API或数据注释。'
答案 0 :(得分:1)
请参阅有关ForeignKey属性用法的文章http://www.entityframeworktutorial.net/code-first/foreignkey-dataannotations-attribute-in-code-first.aspx
ForeignKey
属性应位于ForeignKey
属性或ForeignKeyID
属性
public class BaseJobOffer : IEntity
{
[Key]
public int Id { get; set; }
public string Name { get; set; }
[ForeignKey("File")
public int FileId { get; set; }
//or
[ForeignKey("FileId")
public File File { get; set; }
}