Automapper 自动映射异常
这是我第一次被汽车制造商这样困住。我正在尝试将存储过程返回的结果集映射到我的实体。L2S有可用的结果集,它是我当前测试的一行,可以由多个。通常,如果未正确处理返回类型,则当返回类型可为null时会引发Automper异常。我保留了它的原样,并将它更改为一些值,但在这两种情况下,我仍然得到异常。我在这里遗漏了一些非常基本的东西,但我无法掌握。需要第二双眼睛。。。谢谢 代码调用Automapper 自动映射异常,automapper,Automapper,这是我第一次被汽车制造商这样困住。我正在尝试将存储过程返回的结果集映射到我的实体。L2S有可用的结果集,它是我当前测试的一行,可以由多个。通常,如果未正确处理返回类型,则当返回类型可为null时会引发Automper异常。我保留了它的原样,并将它更改为一些值,但在这两种情况下,我仍然得到异常。我在这里遗漏了一些非常基本的东西,但我无法掌握。需要第二双眼睛。。。谢谢 代码调用 var annualReportOutreachEditionResult = ClientsContext.Annual
var annualReportOutreachEditionResult = ClientsContext.AnnualReportOutreachEditionInfoGet(fice, reportYear).ToList();
if (annualReportOutreachEditionResult != null)
{
annualReportOutreachEditionDetail = Mapper.Map<List<AnnualReportOutreachEditionInfoGetResult>, List<AnnualReportOutreachEditionDetail>>(annualReportOutreachEditionResult);
年度报告OutreacheditionInfoGetResult L2S实体
public class AnnualReportOutreachEditionDetail
{
public string Edition { get; set; }
public DateTime MailDate { get; set; }
public string CardId { get; set; }
}
public partial class AnnualReportOutreachEditionInfoGetResult
{
private string _Edition;
private System.Nullable<System.DateTime> _MailDate;
private string _CardId;
public AnnualReportOutreachEditionInfoGetResult()
{
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Edition", DbType="VarChar(50)")]
public string Edition
{
get
{
return this._Edition;
}
set
{
if ((this._Edition != value))
{
this._Edition = value;
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MailDate", DbType="Date")]
public System.Nullable<System.DateTime> MailDate
{
get
{
return this._MailDate;
}
set
{
if ((this._MailDate != value))
{
this._MailDate = value;
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CardId", DbType="Char(9)")]
public string CardId
{
get
{
return this._CardId;
}
set
{
if ((this._CardId != value))
{
this._CardId = value;
}
}
}
}
这在我这方面是个问题,我忘了添加映射器方法的定义。固定的
public static void MapAnnualReportOutreachEditionDetail()
{
Mapper.CreateMap<AnnualReportOutreachEditionInfoGetResult, AnnualReportOutreachEditionDetail>()
;
}
AutoMapper.AutoMapperMappingException was unhandled by user code
Message=Trying to map System.Collections.Generic.List`1[[Nrccua.LinqToSql.AnnualReportOutreachEditionInfoGetResult, Nrccua.LinqToSql, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]] to System.Collections.Generic.List`1[[Nrccua.BusinessEntities.AnnualReportOutreachEditionDetail, Nrccua.BusinessEntities, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].
Exception of type 'AutoMapper.AutoMapperMappingException' was thrown.
Source=AutoMapper
StackTrace:
at AutoMapper.MappingEngine.AutoMapper.IMappingEngineRunner.Map(ResolutionContext context)
at AutoMapper.MappingEngine.Map(Object source, Type sourceType, Type destinationType)
at AutoMapper.MappingEngine.Map[TSource,TDestination](TSource source)
at AutoMapper.Mapper.Map[TSource,TDestination](TSource source)
at Nrccua.LinqToSql.DataAccess.AnnualReportAccess.GetAnnualReportOutreachEditionDetails(String fice, String reportYear) in C:\Users\tahir\Documents\DATA\Projects\NrccuaWebSite\NrccuaWebSiteTahirj\Core\BusinessEntities\Nrccua.LinqToSql\DataAccess\AnnualReportAccess.cs:line 211
at Nrccua.Repositories.AnnualReportRepository.GetAnnualReportOutreachEditionDetails(String fice, String reportYear) in C:\Users\tahir\Documents\DATA\Projects\NrccuaWebSite\NrccuaWebSiteTahirj\Core\Repositories\Nrccua.Repositories\AnnualReportRepository.cs:line 199
at RepositoryTests.AnnualReportTest.GetOutreachDetailsTest() in C:\Users\tahir\Documents\DATA\Projects\NrccuaWebSite\NrccuaWebSiteTahirj\Core\Tests\RepositoryTests\AnnualReportTest.cs:line 55
InnerException: AutoMapper.AutoMapperMappingException
Message=Trying to map Nrccua.LinqToSql.AnnualReportOutreachEditionInfoGetResult to Nrccua.BusinessEntities.AnnualReportOutreachEditionDetail.
Exception of type 'AutoMapper.AutoMapperMappingException' was thrown.
Source=AutoMapper
StackTrace:
at AutoMapper.MappingEngine.AutoMapper.IMappingEngineRunner.Map(ResolutionContext context)
at AutoMapper.Mappers.EnumerableMapperBase`1.Map(ResolutionContext context, IMappingEngineRunner mapper)
at AutoMapper.Mappers.CollectionMapper.Map(ResolutionContext context, IMappingEngineRunner mapper)
at AutoMapper.MappingEngine.AutoMapper.IMappingEngineRunner.Map(ResolutionContext context)
InnerException: AutoMapper.AutoMapperMappingException
Message=Trying to map Nrccua.LinqToSql.AnnualReportOutreachEditionInfoGetResult to Nrccua.BusinessEntities.AnnualReportOutreachEditionDetail.
Missing type map configuration or unsupported mapping.
Exception of type 'AutoMapper.AutoMapperMappingException' was thrown.
Source=AutoMapper
StackTrace:
at AutoMapper.MappingEngine.AutoMapper.IMappingEngineRunner.Map(ResolutionContext context)
InnerException: