Професионална програма
Loading...
MilenaSl avatar MilenaSl 161 Точки

Всъщност не схващам каква е идеята да се използва мапинг за импортване на данни, така както съм го направила в Xml Processing домашното -> https://github.com/MilenaPetkanova/databases-advanced-entity-framework/blob/master/10.%20XML-Processing/ProductShopDatabase/ProductShop.App/XmlProcessor.cs

При импорт на json мапването ми изглежда още по-неефективно.

0
05/08/2018 18:39:01
martinml avatar martinml 297 Точки

Например ако имаш модел:

public class User
{
    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public int Age { get; set; }
    public string Town { get; set; }
}

но в JSON-а данните са ти така:

[
{
    "FullName": "Ivan Ivanov",
    "Age": 25,
    "Town": "Sofia"
},
{
    "FullName": "Ivana Ivanova",
    "Age": 30,
    "Town": "Plovdiv"
}
]

ще е най-лесно да ползваш DTO, защото в модела имаш разделени FirstName и LastName, а в JSON-a е даден FullName. След това можеш с AutoMapper да мапнеш Age и Town от DTO-то в модела.

2
05/08/2018 19:01:20
MilenaSl avatar MilenaSl 161 Точки

Разбирам, благодаря много. А разполагате ли с код, в който правите такова мапване?

0
TeodorStefanovPld avatar TeodorStefanovPld 1275 Точки

ами примера на колегата мап-а ще е нещо от сорта на :

createmap<userdto,user>()

.formember(x=>x.FirstName,cfg=>cfg.MapFrom(x=>x.FullName[0])

.formember(x=>x.LastName,cfg=>cfg.MapFrom(x=>x.FullName[1])

.reversemap();

нещо от сорта другите 2 то ще си ги map-не и само не е нужно а им казваш но ако искаш може да им го сложиш и reversemap() накрая е ако искаш да правиш и обратното mapvane примерно вадиш ги от базата и ги подаваш като в json и вместо select и тн projectto<userdto> и толкова.

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.