Ich bin in der Notwendigkeit, das folgende Szenario zu mappen.Wie mappe ich dies mit Automapper
Von DAL bekomme ich CustomerJson Wert wie folgt.
Customer.CustomerJson = {
"name": "Ram",
"city" : "India"
}
Ich brauche diese Zeichenfolge Deserialize. Also habe ich beim Mappen die folgenden Sachen ausprobiert.
var config = new MapperConfiguration(cfg =>
{
cfg.CreateMap<Customer, CustomerTO>()
.ForMember(dest => dest.CustName, opt => opt.MapFrom(src => JsonConvert.DeserializeObject(src.CustName)));
});
Aber das gibt mir Laufzeitfehler.
Nicht behandelte Ausnahme: AutoMapper.AutoMapperMappingException: Fehlerzuordnungstypen.
So behielt ich es einfach.
var config = new MapperConfiguration(cfg =>
{
cfg.CreateMap<Customer, CustomerTO>()
.ForMember(dest => dest.CustName, opt => opt.MapFrom(src => (src.CustName));
});
Und ich habe versucht, es zu deserialisieren, während es verbraucht. Aber das gibt Kompilierzeit Fehler.
var custJson = JsonConvert.DeserializeObject(customerTO.CustomerJson);
Fehler 2 Die beste überladene Methode Match für 'Newtonsoft.Json.JsonConvert.DeserializeObject (string)' hat einige ungültige Argumente
Ich weiß customerTO.CustomerJson nicht String ist aber wie Soll ich die erforderliche Zuordnung vornehmen?
Danke.
'customerTO.CustomerJson' ist ein Objekt, keine Zeichenfolge. Lesen Sie die Ausnahmebedingungsnachricht ... –
@CallumLinington, Ja. Ich weiß, wie ich dann mappe, das ist meine Frage –
Verbringen Sie mehr Zeit, die Dokumentation zu lesen und zu verstehen –