【发布时间】:2014-02-12 21:28:42
【问题描述】:
我正在对 TeamCity 8.0.6 上的 C# 项目进行代码检查。检查目前返回超过 200 个编译器错误,所有这些都与 AutoMapper 映射配置定义有关。
在任何定义映射配置的地方,代码检查都会返回 C# 编译器错误和类似以下的消息:
Cannot resolve method 'ForMember(lambda expression, lambda expression)', candidates are...
ReSharper 和 AutoMapper 在我的本地环境中运行良好——代码检查运行时没有错误。只有在带有 TeamCity 的嵌入式代码检查插件的构建服务器上才会出现这些错误。
AutoMapper 和 ReSharper 代码检查之间的兼容性问题之前已记录在案,人们使用一些变通方法进行基于 VisualStudio 的检查。这里的不同之处在于,检查是使用 TeamCity 的嵌入式 ReSharper 版本而不是 VisualStudio 插件运行的。因此,许多修复(例如关闭和重新打开 VisualStudio 或禁用和重新启用 ReSharper 插件)都不适用。
有没有人在使用 TeamCity 的嵌入式 .NET 代码检查插件时遇到过类似问题,如果有,您是如何解决的?
作为记录,插件名称是 dotnet-tools,版本是 27767,它们在 TeamCity 8.0.6(撰写本文时的当前版本)下运行。我可以确认解决方案中只使用了一个版本的 AutoMapper DLL。
【问题讨论】:
-
我已将服务器升级到8.1,插件版本已更改为29879。问题行为仍然存在。
-
这似乎与此 TeamCity 错误有关:youtrack.jetbrains.com/issue/TW-33982 尚无可用修复。
-
根据上面的youtrack链接,这个问题将在8.1.2版本中解决
-
8.1.2 版没有解决这个问题。
-
看起来在 8.1.5 中没有修复。
标签: c# resharper teamcity automapper