Mapper 不包含 Initialize AutoMapper C# 的定义
Mapper does not contain a definition for Initialize AutoMapper C#
我在我的 asp.net C# 项目中实现了 Auto Mapper,但出现错误:
Mapper does not contain a definition for Initialize
我试过这个例子Link Here
我已经粘贴了我的代码:
namespace NewsWeb.Web.Infrastructure
{
public class AutomapperWebProfile:Profile
{
public AutomapperWebProfile()
{
CreateMap<DistrictDTO, District>().ReverseMap();
}
public static void Run()
{
Mapper.Initialize(a =>
{
a.AddProfile<AutomapperWebProfile>();
});
}
}
}
在我的 Golbal.asax.cs 文件中:
AutomapperWebProfile.Run();
错误图片:
方法 Mapper.Initialize
自版本 v9.0.0 (doc), you need to use MapperConfiguration
instead (doc) 起已过时。
var config = new MapperConfiguration(cfg => {
cfg.AddProfile<AutomapperWebProfile>();
});
var mapper = config.CreateMapper();
// or
var mapper = new Mapper(config);
在 Golbal.asax 中使用静态方法初始化映射器不是一个灵活的解决方案。我建议直接在自定义映射器中创建一个配置 class.
public interface IFooMapper
{
Foo Map(Bar bar);
}
public class FooMapper : IFooMapper
{
private readonly IMapper mapper;
public FooMapper()
{
var config = new MapperConfiguration(cfg =>
{
cfg.AddProfile<FooProfile>();
});
mapper = config.CreateMapper();
}
public Foo Map(Bar bar) => mapper.Map<Foo>(bar);
}
我在我的 asp.net C# 项目中实现了 Auto Mapper,但出现错误:
Mapper does not contain a definition for Initialize
我试过这个例子Link Here
我已经粘贴了我的代码:
namespace NewsWeb.Web.Infrastructure
{
public class AutomapperWebProfile:Profile
{
public AutomapperWebProfile()
{
CreateMap<DistrictDTO, District>().ReverseMap();
}
public static void Run()
{
Mapper.Initialize(a =>
{
a.AddProfile<AutomapperWebProfile>();
});
}
}
}
在我的 Golbal.asax.cs 文件中:
AutomapperWebProfile.Run();
错误图片:
方法 Mapper.Initialize
自版本 v9.0.0 (doc), you need to use MapperConfiguration
instead (doc) 起已过时。
var config = new MapperConfiguration(cfg => {
cfg.AddProfile<AutomapperWebProfile>();
});
var mapper = config.CreateMapper();
// or
var mapper = new Mapper(config);
在 Golbal.asax 中使用静态方法初始化映射器不是一个灵活的解决方案。我建议直接在自定义映射器中创建一个配置 class.
public interface IFooMapper
{
Foo Map(Bar bar);
}
public class FooMapper : IFooMapper
{
private readonly IMapper mapper;
public FooMapper()
{
var config = new MapperConfiguration(cfg =>
{
cfg.AddProfile<FooProfile>();
});
mapper = config.CreateMapper();
}
public Foo Map(Bar bar) => mapper.Map<Foo>(bar);
}