У меня есть исходный класс с несколькими полями, 5 из этих полей могут иметь значение NULL, но только одно поле не должно иметь значение NULL одновременно.
Я хотел бы сопоставить одно поле назначения NoteParent используя логику ниже. т. е. я хочу, чтобы строка из MapFrom была помещена в поле назначения NoteParent.
Возможно ли это с помощью AutoMapper? Используя приведенное ниже сопоставление, мне удалось заставить одно из сопоставлений работать. По сути, только первое значение src первой записи поместит значение в место назначения записей, которые соответствуют логике, но логика для других возможностей не работает.
CreateMap()
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => (s.Agent != null));
opt.MapFrom(s => "Agent");
})
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => s.AssociatedFirm != null);
opt.MapFrom(s => "Associated Firm");
})
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => (s.Review != null));
opt.MapFrom(s => "Review");
})
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => s.Schedule != null);
opt.MapFrom(s => "Schedule");
})
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => (s.Participant != null));
opt.MapFrom(s => "Participant");
});
Подробнее здесь: https://stackoverflow.com/questions/785 ... ation-base
AutoMapper. Можно ли сопоставить различные исходные поля с местом назначения на основе логики условий? ⇐ C#
Место общения программистов C#
1733522019
Anonymous
У меня есть исходный класс с несколькими полями, 5 из этих полей могут иметь значение NULL, но только одно поле не должно иметь значение NULL одновременно.
Я хотел бы сопоставить одно поле назначения NoteParent используя логику ниже. т. е. я хочу, чтобы строка из MapFrom была помещена в поле назначения NoteParent.
Возможно ли это с помощью AutoMapper? Используя приведенное ниже сопоставление, мне удалось заставить одно из сопоставлений работать. По сути, только первое значение src первой записи поместит значение в место назначения записей, которые соответствуют логике, но логика для других возможностей не работает.
CreateMap()
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => (s.Agent != null));
opt.MapFrom(s => "Agent");
})
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => s.AssociatedFirm != null);
opt.MapFrom(s => "Associated Firm");
})
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => (s.Review != null));
opt.MapFrom(s => "Review");
})
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => s.Schedule != null);
opt.MapFrom(s => "Schedule");
})
.ForMember(d => d.NoteParent, opt =>
{
opt.PreCondition(s => (s.Participant != null));
opt.MapFrom(s => "Participant");
});
Подробнее здесь: [url]https://stackoverflow.com/questions/78589388/automapper-is-it-possible-to-map-different-source-fields-to-a-destination-base[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия