我有一个包含7个或8个项目的解决方案,其中没有一个包含任何特别令人兴奋的项目,并且所有项目都表现得如您所期望的那样(实际上还有我在当前机器上使用的其他项目)。
然而,每当我打开其中一个AutoMapper MappingConfiguration文件时,Visual Studio会停止运行,将光标移动一个空格一次需要几分钟,然后尝试编写代码会导致大量的脏话 - 很多很多很多咒骂
似乎只是这个MappingConfig.cs
文件。它甚至不是那么大 - 可能是30个映射(cfg.CreateMap<Bar,Foo>();
)和总共350行代码。
使用AutoMapper时,是否有人遇到过Visual Studio减速的问题?
AutoMapper是4.2我相信,我使用的是Visual Studio 2015社区版。
答案 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后,问题不那么严重,但仍然存在。