我正在使用現有的解決方案。該解決方案使用Windsor IoC。我有一個AutomapperMappings.cs
類,看起來像這樣:AutoMapper,遠離過時的靜態API
public class AutoMapperMappings
{
public static void Configure()
{
AutoMapper.Mapper.Configuration
.CreateMap<LatestUpdateModel, LatestUpdate>();
AutoMapper.Mapper.Configuration
.CreateMap<LatestUpdate, LatestUpdateModel>();
AutoMapper.Mapper.Configuration
.CreateMap<DownloadLinkModel, DownloadLink>();
AutoMapper.Mapper.Configuration
.CreateMap<DownloadLink, DownloadLinkModel>();
AutoMapper.Mapper.Configuration
.CreateMap<NavigationElementModel, NavigationElement>();
AutoMapper.Mapper.Configuration
.CreateMap<NavigationElement, NavigationElementModel>();
AutoMapper.Mapper.Configuration
.CreateMap<Promobox, PromoboxModel>();
AutoMapper.Mapper.Configuration
.CreateMap<PromoboxModel, Promobox>();
}
}
在我Global.asax
,我有以下幾點:
protected void Application_Start(object sender, EventArgs e)
{
IoCContainer();
ConfigureAutoMapperMappings();
}
protected virtual void ConfigureAutoMapperMappings()
{
AutoMapperMappings.Configure();
}
以上是給我一個警告,說我應該從靜態API移開。所以,我用Google搜索周圍,並做了一些讀數建議我改變我AutomapperMappings.cs
這樣:
public class AutoMapperMappings
{
public static void Configure()
{
var config = new MapperConfiguration(cfg =>
{
cfg.CreateMap<LatestUpdateModel, LatestUpdate>();
cfg.CreateMap<LatestUpdate, LatestUpdateModel>();
cfg.CreateMap<DownloadLinkModel, DownloadLink>();
cfg.CreateMap<DownloadLink, DownloadLinkModel>();
cfg.CreateMap<NavigationElementModel, NavigationElement>();
cfg.CreateMap<NavigationElement, NavigationElementModel>();
cfg.CreateMap<Promobox, PromoboxModel>();
cfg.CreateMap<PromoboxModel, Promobox>();
});
}
}
這是所有好的,但可變var config
實際上並沒有在任何地方使用,所以我敢肯定,我需要做一些更多的東西,但我不知道我需要改變和在哪裏。
https://github.com/AutoMapper/AutoMapper/wiki/Migrating-from-static-API –
感謝@VadimMartynov,那StructureMap的東西讓我很困惑。我沒有這些,我沒有爲我的IoC使用StructureMap。 Windows IoC看起來簡單得多(因爲我看不到任何在我的'IoCContainer'方法 – Ciwan