我在没有使用 IDE 的情况下键入了这个简化的示例,因此请原谅任何语法错误。当我尝试自动映射时,当我尝试编译映射时,我得到一个 FluentConfigurationException -
“关联引用未映射的类
IEmployee
。”
我想如果我要解决这个问题,当它遇到引用时也会遇到类似的错误IEmployer
。我不反对手动创建 ClassMap,但我更喜欢 AutoMapper 来代替它。
public interface IEmployer
{
int Id{ get; set; }
IList<IEmployee> Employees { get; set; }
}
public class Employer: IEmployer
{
public int Id{ get; set; }
public IList<IEmployer> Employees { get; set; }
public Employer()
{
Employees = new List<IEmployee>();
}
}
public interface IEmployee
{
int Id { get; set; }
IEmployer Employer { get; set; }
}
public class Employee: IEmployee
{
public int Id { get; set;}
public IEmployer Employer { get; set;}
public Employee(IEmployer employer)
{
Employer = employer;
}
}
我试过使用.IncludeBase<IEmployee>()
但无济于事。这就像我根本没有调用 IncludeBase 一样。
是不是在我的域实体中不使用接口或依赖手动定义的 ClassMap 的唯一解决方案?
这两种选择都会对我的应用程序的设计方式造成重大问题。在完成所有功能实现之前,我忽略了持久性,我不会再重复这个错误:-(