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));