我有一个WPF 4.5 Prism项目,它可以正常工作,直到我添加Automapper 3.0。当我将Automapper添加到我的DAL以便从实体框架对象转换为DTO时,应用程序在运行时失败,似乎在创建shell之后立即执行。我在某处看到Automapper在某些情况下没有完全部署,因此我已将对Automapper和Automapper.Net4的引用添加到Shell项目中,以确保部署所有内容。
这是我收到的错误消息:
Could not load file or assembly 'System.Core, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes' or one of its dependencies. The system cannot find the file specified.
以下是我添加的导致异常的代码:
namespace DAL
{
[PartCreationPolicy(CreationPolicy.NonShared)]
[Export(typeof(ICampaignActionDataAccess))]
public class CampaignActionDataAccess : ICampaignActionDataAccess
{
public CampaignActionDataAccess()
{
//if (Mapper.FindTypeMapFor<CampaignAction, CampaignActionDTO>() == null)
// Mapper.CreateMap<CampaignAction, CampaignActionDTO>();
//if (Mapper.FindTypeMapFor<CampaignActionGroup, CampaignActionGroupDTO>() == null)
// Mapper.CreateMap<CampaignActionGroup, CampaignActionGroupDTO>();
//if (Mapper.FindTypeMapFor<CampaignActionDescriptor, CampaignActionDescriptorDTO>() == null)
// Mapper.CreateMap<CampaignActionDescriptor, CampaignActionDescriptorDTO>();
}
public IEnumerable<CampaignActionDTO> GetAllActiveCampaignActions()
{
//using (var db = new CampaignActionEntities())
//{
// var actions = (from ca in db.CampaignActions.Include(d => d.CampaignActionDescriptors)
// where ca.IsValid == true
// select ca).ToList();
// return Mapper.Map<IEnumerable<CampaignActionDTO>>(actions);
//}
throw new NotImplementedException();
}
}
}