Alan modeli:ASP.net AutoMapper Eksik tür Harita yapılandırma veya desteklenmeyen haritalama
public class Test
{
public int Id { get; set; }
}
Görünüm modeli:
public class TestViewModel
{
public int Id { get; set; }
}
Global.asax:
AutoMapper.Initialize();
AutoMapper:
public static class AutoMapper
{
public static void Initialize()
{
CreateModelsToViewModels();
CreateViewModelsToModels();
}
private static void CreateModelsToViewModels()
{
Mapper.Initialize(x => x.CreateMap<Test, TestViewModel>().ReverseMap());
Mapper.AssertConfigurationIsValid();
}
private static void CreateViewModelsToModels()
{
}
}
Yapılandırma geçerlidir.
public ActionResult Index(string category)
{
Test t = _Context.test.First(x => x.Id == 1);
var test = Mapper.Map<Test, TestViewModel>(t); //error here
}
Sadece veri 1. Hatta bu basit testin bir kimliğine sahip bir satır bana hata Missing type map configuration or unsupported mapping
atma tutar olduğunu. Sorun ne olabilir?
Düzenleme: Mapper.Initialize(x => x.CreateMap<Test, TestViewModel>());
için Mapper.Initialize(x => x.CreateMap<Test, TestViewModel>().ReverseMap());
değiştirildi ve yine aynı hata
O kadar doğrulayamıyorum: herkes için
başka senin veritabanı göçler kullanarak eğer aksi takdirde bu kafa karıştırıcı hata alıyorum, paket yöneticisi konsolunda
update-database
kullandığınızdan emin olun, bu sorunu yaşıyor ama benim tahminim, AutoMapper'i iki kez (ModelToVm ve VmToModel) başlatıyor olmanızdır, bu yüzden ikinci kez aradığınızda başlatımlardan birinin üzerine yazılıyor mu? – Sam@Sam İleti yayınlandım, hala hata alıyorum. Ayrıca tüm diğer kodumu da açıkladım, bu yüzden sadece automapper'ı bir kez onlar için modeller başlatıyor. –
'ReverseMap()' Bir haritayı iki yoldan oluşturur. Bu yüzden yanlış cevabımı sildim – esiprogrammer