1. ホーム
  2. c#

[解決済み] 定義済みの型 'System.ValueTuple´2´ が定義されていないか、インポートされていません。

2022-03-23 03:36:21

質問

Visual Studio 15 Preview 3をインストールし、新しいタプル機能を使用しようとしました。

static void Main(string[] args)
{
    var x = DoSomething();
    Console.WriteLine(x.x);
}

static (int x, int y) DoSomething()
{
    return (1, 2);
}

コンパイルすると、エラーが発生します。

定義済みの型 'System.ValueTuple´2´ が定義されていないか、インポートされていません。

によると ブログ記事 この機能はデフォルトでオンになっているはずです。

何がいけなかったのでしょうか?

どうすればいいですか?

.NET 4.6.2 以下、.NET Core 1.x、および .NET Standard 1.x の場合、NuGet パッケージをインストールする必要があります。 System.ValueTuple :

Install-Package "System.ValueTuple"

またはVS 2017でパッケージリファレンスを使用する。

<PackageReference Include="System.ValueTuple" Version="4.4.0" />

.NET Framework 4.7、.NET Core 2.0、.NET Standard 2.0 にはこれらの型が含まれています。