3

我刚刚从版本 2 升级到 Automapper 3。我在项目中使用了两种方法:

IsListOrDictionaryType()ToNullSafeString()

我正在使用 .NET 4.0。

有没有人有任何建议/想法?

更新 Automapper 3.0.0 中有四个额外的命名空间。Impl, Internal, Mappers, QueryableExtensions. “缺失”的函数在其中,Internal但其他对象方法和类型也在其中,因此这似乎不是一个解决方案。

4

4 回答 4

2

看起来他们已根据此问题移至 AutoMapper.Internal 命名空间:https ://github.com/AutoMapper/AutoMapper/issues/311

于 2013-10-21T20:16:50.253 回答
1

我需要做的就是添加

using AutoMapper.Internal;

在我的映射器配置文件 .cs 的顶部,它运行良好。

于 2013-11-07T18:16:36.517 回答
0

对于像我这样不太熟悉更改的一些细节的人,我使用了以下内容:

AutoMapper.Internal.PrimitiveExtensions.IsListOrDictionaryType(myData.GetType())

它返回一个布尔值和

AutoMapper.Internal.PrimitiveExtensions.ToNullSafeString(myString)

它返回一个字符串(原文如此)。

于 2013-11-06T18:50:45.133 回答
0

这是一个侧面响应,但如果您使用 ToNullSafeString 并现在升级到 v4.0,则该方法将永远消失。

https://github.com/paulbatum/automapper/blob/master/src/AutoMapper/Internal/PrimitiveExtensions.cs你可以看到早期的实现并自己做,以减少对这个方法的依赖。

你应该做类似的事情:

return value == null ? string.Empty : value.ToString();
于 2016-01-14T12:02:04.987 回答