Visual Studio 2015中的AutoMapper CS文件速度极慢

时间:2016-05-29 17:48:49

标签: c# visual-studio-2015 automapper

我有一个包含7个或8个项目的解决方案,其中没有一个包含任何特别令人兴奋的项目,并且所有项目都表现得如您所期望的那样(实际上还有我在当前机器上使用的其他项目)。

然而,每当我打开其中一个AutoMapper MappingConfiguration文件时,Visual Studio会停止运行,将光标移动一个空格一次需要几分钟,然后尝试编写代码会导致大量的脏话 - 很多很多很多咒骂

似乎只是这个MappingConfig.cs文件。它甚至不是那么大 - 可能是30个映射(cfg.CreateMap<Bar,Foo>();)和总共350行代码。

使用AutoMapper时,是否有人遇到过Visual Studio减速的问题?

AutoMapper是4.2我相信,我使用的是Visual Studio 2015社区版。

5 个答案:

答案 0 :(得分:2)

我的解决方案中存在类似的问题。 在我的案例中使用ADK我找到了理由。 Resharper获得所有cpu性能。 逐点我从中排除一些特征,并在结果中找到决定。

关闭Resharper IntelliSense,允许工作Visual Studio原生智能感知。

Resharper菜单 - &gt;选项 - &gt;环境 - &gt;智能感知 - &gt;一般

将电台设置为Visual Studio。

使用Autommaper CS文件后,我将其转回。

不知道这是怎么回事,但我猜它是Automapper新的反射引擎,从3.1.1版本更新Automapper后我遇到了这个问题。

但现在我的CPU处于3-5%的水平。

答案 1 :(得分:2)

我遇到了同样的事情并向Github回购报道了一个问题。

https://github.com/AutoMapper/AutoMapper/issues/2217

他们认为这是一个VS问题,但我对AutoMapper 5.0 <得到了一个很好的答案。使用AutoMapper Profile Instances以便您可以将配置拆分为多个单独的文件。这样可以获得一些真正的性能提升,而不是将所有内容都放在一个文件中。

https://github.com/AutoMapper/AutoMapper/wiki/Configuration#profile-instances

答案 2 :(得分:1)

当我开始编辑Automapper配置cs文件时,我有完全相同的体验。我的配置文件更小(约170行代码)。 Visual Studio开始占用超过50%的CPU,一切都变慢了。 我正在使用VS2015(专业版),另外还安装了resharper 10。 Automapper版本是4.2.1。

答案 3 :(得分:0)

我有同样的问题,因为4.2我升级到5.1仍然同样的问题似乎与intellisense或可能Reshapper?

任何时候你尝试像下面这样做ForMember并且CPU上升到50%+到键入1个字符需要30秒的时间点,我通常必须关闭visual studio并重新打开它使AutoMapper无法使用。或者我必须在文本编辑器模式下加载文件,但是我失去了所有好的智能感知。

示例代码:

  

Mapper.Initialize(cfg =&gt;               {cfg.CreateMap()                     .ForMember(dest =&gt; dest.OrderNumber,                        opts =&gt; opts.MapFrom(src =&gt; $&#34; {src.OrderReferenceNumber}&#34;))

     

};

答案 4 :(得分:0)

我遇到了同样的问题(Visual Studio 2015 Update 3,AutoMapper 4.2.1,Resharper 2016.1.2)。

安装Microsoft Visual Studio 2015 Update 3(KB3165756)的累积服务更新并升级到Resharper 2016.2后,问题不那么严重,但仍然存在。