8

プロジェクトをビルドしようとすると、このエラーが発生します。特集ページの単語が強調表示され、このエラーが発生します。

エラー 1 名前 'GenerationTargetLanguage' は現在のコンテキストに存在しません

各機能でカスタム ツールを実行しようとしましたが、エラーが 2 つから 3 つになりました。

Googleグループで問題を抱えている別の人を見つけました。解決策はありません。

4

3 に答える 3

8

最新バージョンの specflow をインストールしてサンプル プロジェクトをコンパイルしようとしたときに、同じ問題が発生しました。これは、サンプル プロジェクトに古いバージョンの specflow dll のローカル コピーが含まれていたためです。新しい specflow - 機能ファイル コンパイラは、存在しない specflow-dll メソッド シグネチャを呼び出すためのソースコードを生成します。

プロジェクトの lib-directory にある specflow-dll を新しいインストールの dll に置き換えることで問題を解決しました。

于 2011-01-27T08:34:11.117 に答える
5

さまざまな状況でまったく同じエラーが発生しました。私は元々 (2011 年初頭) msi インストーラーを使用して Specflow v1.5.0.0 をインストールしていましたが、今日は NuGet を使用して特定のプロジェクトのバージョン 1.8.1.0 をインストールしました (を使用Install-Package SpecFlow -ProjectName MyProject)。

Visual Studio のすべてのインスタンスを終了し、v1.8.1.0 の msi インストーラーをダウンロードして実行した後、Visual Studio を再度起動し、既存の機能ファイルを削除して新しい機能ファイルを追加すると、すべてが機能しました。

于 2011-11-04T02:41:23.030 に答える
1

破壊的な変更であることがわかりました。xyz.feature.cs では、enum GenerationTargetLanguage.CSharp を ProgrammingLanguage.CSharp に置き換える必要があります。

于 2012-04-23T14:16:04.850 に答える