首页 > 解决方案 > 错误 CS8107:功能“元组相等”在 C# 7.0 中不可用。请使用语言版本 7.3 或更高版本

问题描述

我有最新的 Visual Studio 2017 版本

我的 Visual Studio 版本

我努力了:

毕竟,我的项目似乎仍然无法在 C# 7.3 中编译,因为当我尝试在调试器中比较两个元组时,它会提示此错误消息:

使用调试器时收到的错误消息

转换为:错误 CS8107:功能“元组相等”在 C# 7.0 中不可用。请使用语言版本 7.3 或更高版本

这是我的代码:

 (CRiverGameState, int, bool) osti;
 bool canRaise = _gameState.GetLstAllowedActionsForCurrentPlayer().Contains(ActionsPossible.Raise);
 (CRiverGameState, int, bool) riverKey = (riverGameState, (int)_boardType, canRaise);

 foreach(var tabarnak in CDBHelper.PRiverAllGameStatesFoldStats.Keys)
 {
   if (tabarnak.Item1.PID == 2592 && tabarnak.Item2 == 1089 && tabarnak.Item3 == false)
     osti = tabarnak;
 }

我没主意了。为什么我的项目是用 C# 7.0 而不是 C# 7.3 编译的?

标签: c#visual-studiovisual-studio-2017c#-7.0c#-7.3

解决方案


您的调试器版本使用 C# 7.0。

您的项目使用的是 C# 7.3,但调试器使用的是 C# 7.0。

如果你这样做:

bool result = (osti == riverKey); // This will return true, but not in the debugger 

这将起作用。


推荐阅读