最初に、私の英語についてお詫びしたいと思います。それは私の母国語ではありません! 私は TFS ビルド (2010) のすばらしい世界では全くの無知で、問題を抱えています。簡単な例を使って説明しようと思います (しかし、私の実際の状況はもっと複雑です)。
コンソール アプリケーション "MyApp1" を含むプロジェクトがあり、コンピューター上のその場所は "D:\MyProjets\MyApp1" です。emailTemplate.html という名前のファイルを含む、リソースのみを含む別のプロジェクト「Res」があります。
私のプロジェクト「MyApp1」はこのファイルを使用します。したがって、「App.config」ファイルには、このリソースのパスを格納するキーがあります:「D:\MyProjets\Res\emailTemplate.html」
最後に、そのアプリケーション「MyApp1」のテストがあります。このテストでは、電子メールが送信されたかどうかを確認します。電子メール「MyApp1」を送信するには、ファイル「emailTemplate.html」が必要であり、構成ファイル内のキーを使用して検索します。
コンピューターでテストを実行すると、すべて問題ありません。
しかし、TFS ビルドを使用してソリューションをビルドすると、テストの実行時にこのリソースに問題が発生します。ビルド中に、ソース ファイルがディレクトリにコピーされます (たとえば、「D:\Build\1\My build projet\Sources\MyProjets\Res」など)。したがって、「MyApp1」は「D」で「emailTemplate.html」を検索します。 :\MyProjets\Res\emailTemplate.html" (構成ファイル) であり、もちろん見つけることはできません。
どうすればいいですか?
私のプロジェクトがこのようにリソースを扱うべきではないことはすでに知っていますが、それを変更することはほとんど不可能です.
BuildProcessTemplate を変更して、ビルド サーバーが Res プロジェクトの必要な場所で getLatest を実行するように強制することを考えました。しかし、それが良いアイデアなのか、それとも可能なのかさえわかりません...
助けてくれてありがとう!:)