AutoMapper CS 文件在 Visual Studio 2015 年速度极慢
AutoMapper CS File Extremely Slow in Visual Studio 2015
我有一个包含 7 或 8 个项目的解决方案,none 其中包含任何特别令人兴奋的东西,并且所有的性能都和您预期的一样好(实际上以及我在当前机器上使用的其他项目).
但是,每当我打开其中一个 AutoMapper MappingConfiguration 文件时,Visual Studio 就会停止,将光标移动一个 space 一次需要几分钟,并且尝试编写代码会导致很多咒骂 - 很多很多很多咒骂。
好像只有这个MappingConfig.cs
文件。它甚至没有那么大——可能有 30 个映射 (cfg.CreateMap<Bar,Foo>();
),总共 350 行代码。
有没有人在使用 AutoMapper 时遇到 Visual Studio 变慢的情况?
我相信 AutoMapper 是 4.2,我正在使用 Visual Studio 2015 社区版。
当我开始编辑Automapper config cs文件时,我有完全相同的经历。我的配置文件更小(约 170 行代码)。 Visual Studio 开始占用超过 50% CPU 并且一切都变慢了。
我正在使用 VS2015(专业版),此外还安装了 resharper 10。
Automapper 版本是 4.2.1.
自从 4.2 我升级到 5.1 后我遇到了同样的问题,同样的问题似乎与 intellisense 或 Reshapper 有关?
任何时候你尝试像下面那样做一个 ForMember 并且 CPU 上升到 50%+ 到输入 1 个字符需要 30 秒的地步,我通常不得不关闭 visual studio并重新打开它使 AutoMapper 无法使用。或者我必须在文本编辑器模式下加载文件,但我失去了所有漂亮的智能感知。
示例代码:
Mapper.Initialize(cfg =>
{ cfg.CreateMap()
.ForMember(dest => dest.OrderNumber,
opts => opts.MapFrom(src => $"{src.OrderReferenceNumber}"))
};
我遇到了同样的问题(Visual Studio 2015 更新 3、AutoMapper 4.2.1、Resharper 2016.1.2)。
安装 Microsoft Visual Studio 2015 Update 3 (KB3165756) 的累积服务更新并升级到 Resharper 2016.2 后,问题不那么严重了,但它仍然存在。
我的解决方案中有类似的问题。
通过使用 ADK 我在我的案例中找到了原因。
Resharper 获得所有 cpu 性能。
我逐点从中排除了一些特征,结果找到了决定。
关闭 Resharper IntelliSense,允许工作 Visual Studio 本机 IntelliSense。
Resharper 菜单 -> 选项 -> 环境 -> IntelliSense -> 常规
将收音机设置为 Visual Studio。
在使用 Autommaper CS 文件后,我将其退回。
不知道这是怎么回事,但我猜是 Automapper 新反射引擎,从 3.1.1 版本更新 Automapper 后我遇到了这个问题。
但现在我的 CPU 处于 3-5% 的水平。
我遇到了同样的事情并向 Github 存储库报告了一个问题。
https://github.com/AutoMapper/AutoMapper/issues/2217
他们认为这是一个 VS 问题,但我 AutoMapper 5.0 <
得到了一个很好的答案。使用 AutoMapper Profile Instances
以便您可以将配置拆分为多个单独的文件。这提供了一些真正的性能提升,而不是将所有内容都放在一个文件中。
https://github.com/AutoMapper/AutoMapper/wiki/Configuration#profile-instances
我有一个包含 7 或 8 个项目的解决方案,none 其中包含任何特别令人兴奋的东西,并且所有的性能都和您预期的一样好(实际上以及我在当前机器上使用的其他项目).
但是,每当我打开其中一个 AutoMapper MappingConfiguration 文件时,Visual Studio 就会停止,将光标移动一个 space 一次需要几分钟,并且尝试编写代码会导致很多咒骂 - 很多很多很多咒骂。
好像只有这个MappingConfig.cs
文件。它甚至没有那么大——可能有 30 个映射 (cfg.CreateMap<Bar,Foo>();
),总共 350 行代码。
有没有人在使用 AutoMapper 时遇到 Visual Studio 变慢的情况?
我相信 AutoMapper 是 4.2,我正在使用 Visual Studio 2015 社区版。
当我开始编辑Automapper config cs文件时,我有完全相同的经历。我的配置文件更小(约 170 行代码)。 Visual Studio 开始占用超过 50% CPU 并且一切都变慢了。 我正在使用 VS2015(专业版),此外还安装了 resharper 10。 Automapper 版本是 4.2.1.
自从 4.2 我升级到 5.1 后我遇到了同样的问题,同样的问题似乎与 intellisense 或 Reshapper 有关?
任何时候你尝试像下面那样做一个 ForMember 并且 CPU 上升到 50%+ 到输入 1 个字符需要 30 秒的地步,我通常不得不关闭 visual studio并重新打开它使 AutoMapper 无法使用。或者我必须在文本编辑器模式下加载文件,但我失去了所有漂亮的智能感知。
示例代码:
Mapper.Initialize(cfg => { cfg.CreateMap() .ForMember(dest => dest.OrderNumber, opts => opts.MapFrom(src => $"{src.OrderReferenceNumber}"))
};
我遇到了同样的问题(Visual Studio 2015 更新 3、AutoMapper 4.2.1、Resharper 2016.1.2)。
安装 Microsoft Visual Studio 2015 Update 3 (KB3165756) 的累积服务更新并升级到 Resharper 2016.2 后,问题不那么严重了,但它仍然存在。
我的解决方案中有类似的问题。 通过使用 ADK 我在我的案例中找到了原因。 Resharper 获得所有 cpu 性能。 我逐点从中排除了一些特征,结果找到了决定。
关闭 Resharper IntelliSense,允许工作 Visual Studio 本机 IntelliSense。
Resharper 菜单 -> 选项 -> 环境 -> IntelliSense -> 常规
将收音机设置为 Visual Studio。
在使用 Autommaper CS 文件后,我将其退回。
不知道这是怎么回事,但我猜是 Automapper 新反射引擎,从 3.1.1 版本更新 Automapper 后我遇到了这个问题。
但现在我的 CPU 处于 3-5% 的水平。
我遇到了同样的事情并向 Github 存储库报告了一个问题。
https://github.com/AutoMapper/AutoMapper/issues/2217
他们认为这是一个 VS 问题,但我 AutoMapper 5.0 <
得到了一个很好的答案。使用 AutoMapper Profile Instances
以便您可以将配置拆分为多个单独的文件。这提供了一些真正的性能提升,而不是将所有内容都放在一个文件中。
https://github.com/AutoMapper/AutoMapper/wiki/Configuration#profile-instances