我有两个使用 codefirst 实体框架构建的表。
public class TimeEntry:Entity
{
[Required]
[Display(Name = "Activity")]
public int ActivityId { get; set; }
public virtual Activity Activity { get; set; }
}
public class Activity:Entity
{
private ICollection<TimeEntry> _timeEntries;
[Required]
public string Description { get; set; }
public virtual ICollection<TimeEntry> TimeEntries
{
get
{
return _timeEntries ?? (_timeEntries = new List<TimeEntry>());
}
set
{
_timeEntries = value;
}
}
}
public class Entity
{
public int Id { get; set; }
}
这些是我为我的 Db 创建的类。创建数据库没有问题。当我尝试执行 CRUD 操作时出现错误
DataBinding:“System.Data.Entity.DynamicProxies.Activity_AD12BF558F098271F1F51B3B1489B4B3B281FD0B686C8457333DE5BEE0E8B6A9”不包含名为“ActivityId”的属性
它试图在 Activity 表中找到 ActivityId,但主键是 Id。如何将 TimeEntry 表中的外键 ActivityId 映射到 Activity 表中的主键 Id。