Я использую расширения Dapper для создания своих репозиториев в приложении MVC, которое настроено на использование Structuremap. Для одной из моделей мне нужно создать собственное сопоставление, чтобы игнорировать поле.Как настроить собственное расширение Dapper Extensions с помощью Structuremap?
public class ServiceMapper : ClassMapper<Service>
{
public ServiceMapper()
{
//Ignore this property entirely
Map(x => x.IsRunningNormally).Ignore();
//optional, map all other columns
AutoMap();
}
}
Теперь, чтобы вызвать этот картографа, мне нужно, чтобы установить его, я называю эту строку кода в конструкторе моего репозитория.
DapperExtensions.DapperExtensions.DefaultMapper = typeof(ServiceMapper);
Как только я ударил эту линию, StructureMap пытается разрешить тип и бросает мне исключение:
ServiceMonitor.Infrastructure.ServiceMapper не GenericTypeDefinition. MakeGenericType может быть вызван только для типа, для которого Type.IsGenericTypeDefinition является истинным.
Я не уверен, что означает эта ошибка и как ее решить? Может ли кто-нибудь объяснить мне, что здесь происходит?
[Ссылка на официальные документы] (https://github.com/tmsmith/Dapper-Extensions/wiki/Customized-mapping-for-a-class) –