我正在使用Linq2SQL和Automapper来构建我的应用程序的DAL。
从DomainModel映射到LinqModel:
public DataRepository(string connectionString)
{
Mapper.CreateMap<DomainModel, LinqModel>()
.ForMember(x => x.SubLinqModel, opt => opt.MapFrom(src => src.SubDomainModel))
repository = new Linq2SqlRepository<DbDataContext, TDomainModel, TLinqModel>(new DbDataClassesDataContext(connectionString));
}
DomainModel代码:
public class DomainModel
{
public DomainModel()
{
SubDomainModelProperty = new List<SubDomainModel>();
}
public int ID { get; set; }
public string Name { get; set; }
public List<SubDomainModel> SubDomainModelProperty { get; set; }
}
因此,我们在域模型中有一对多的关系。我在LinqModel中也是这样 - 两个链接的一对多表
当我尝试运行时,我遇到了错误:
Trying to map System.Collections.Generic.List`1[SubDomainModel, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null] to System.Data.Linq.EntitySet`1[SubLinqModel, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null].
Using mapping configuration for LinqModel to DomainModel
Destination property: SubLinqModel
Exception of type 'AutoMapper.AutoMapperMappingException' was thrown.
我怎样才能做到这一点?我的代码出了什么问题?
答案 0 :(得分:0)
根据您的代码以及异常消息Destination property: SubLinqModel
中的部分确定,您必须创建从SubLinqModel到SubDomainModel的映射。