ValueInjector с объектами динамического прокси - PullRequest
0 голосов
/ 25 марта 2012

У меня есть стандартный шаблон репозитория со служебным слоем, и мне нужно сопоставить объект POCO с именем Game:

public class Game
{    
    public int Id { get; set; }
    public int GameTypeId { get; set; }
    public int GameStateId { get; set; }
    public int? PreviousGameId { get; set; }
    public DateTime EndOn { get; set; }
    public DateTime StartOn { get; set; }
}

, чтобы сопоставить его с моделью представления, в которой есть член с именем GameId.Итак, Id> GameId .

Однако, когда я создаю свое соглашение о отображении, объект входит с тем, что выглядит как GUID, прикрепленный к его концу.

Как я могу получить значение инжектора для правильного отображения этих объектов POCO безотображение из динамического прокси в POCO .. или это невозможно?

Ответы [ 3 ]

0 голосов
/ 06 апреля 2012

Я закончил тем, что отключил генерацию прокси и ленивую загрузку, и теперь я просто загружаю все

0 голосов
/ 13 ноября 2018

Видел такую ​​же проблему сегодня с динамическими прокси Entity Framework. Вот как заставить ValueInjecter работать без отключения прокси.

Я использовал Mapper.AddMap для создания пользовательской карты, основанной на непрокси-классе. Во время выполнения мой вызов Mapper.Map не был сопоставлен с моей картой, потому что он получил прокси-класс.

var customerInput = Mapper.Map<CustomerInput>(customer); //runs default map

Когда я вызвал Mapper.Map с обоими типами ввода и вывода, это сработало!

var customerInput = Mapper.Map<Customer, CustomerInput>(customer); //runs custom map
0 голосов
/ 26 марта 2012

Попробуйте выполнить явное приведение прокси к базовому типу POCO, прежде чем отобразить его.

...