Automapper 升级问题...类型中不存在
Automapper upgrade woes...does not exist in the type
我最近从旧版本的 Automapper 升级到最新版本。
升级很头疼,但 Automapper 升级指南帮了大忙 (https://docs.automapper.org/en/stable/8.0-Upgrade-Guide.html)。
我要处理的最后一个问题是:
我改变了这个:
cfg.CreateMap<String, String>()
.ConvertUsing(Conversion.TrimToNull);
为此:
cfg.CreateMap<String, String>()
.ConvertUsing(new Conversion.TrimToNull);
使用一个名为 Conversion
的 class,如下所示:
public static class Conversion
{
public static String TrimToNull(this String str)
{
return str?.Trim().Coalesce(null);
}
}
但现在我收到这个错误:
The name 'TrimToNull' does not exist in the type Conversion
我不确定为什么它在 class.
中却看不到 TrimToNull
我做错了什么。它适用于旧版本的 Automapper。
谢谢!
查看自动映射器指南,他们似乎将签名从 Func<> 更改为 Expression>。 Auto Mapper Convert Using Update
我相信出于这个原因你想要:
cfg.CreateMap<String, String>().ConvertUsing(x => Conversion.TrimToNull(x));
我最近从旧版本的 Automapper 升级到最新版本。
升级很头疼,但 Automapper 升级指南帮了大忙 (https://docs.automapper.org/en/stable/8.0-Upgrade-Guide.html)。
我要处理的最后一个问题是:
我改变了这个:
cfg.CreateMap<String, String>()
.ConvertUsing(Conversion.TrimToNull);
为此:
cfg.CreateMap<String, String>()
.ConvertUsing(new Conversion.TrimToNull);
使用一个名为 Conversion
的 class,如下所示:
public static class Conversion
{
public static String TrimToNull(this String str)
{
return str?.Trim().Coalesce(null);
}
}
但现在我收到这个错误:
The name 'TrimToNull' does not exist in the type Conversion
我不确定为什么它在 class.
中却看不到TrimToNull
我做错了什么。它适用于旧版本的 Automapper。
谢谢!
查看自动映射器指南,他们似乎将签名从 Func<> 更改为 Expression
我相信出于这个原因你想要:
cfg.CreateMap<String, String>().ConvertUsing(x => Conversion.TrimToNull(x));