全て、
私は現在、TFS 2008 インストールを新しいハードウェアにアップグレードするための反復可能なプロセスを作成しようとしています。これは、Microsoft が移行アップグレードと呼んでいますが、新しいハードウェアで VS 2008 プロジェクトを構築するときに問題が発生しています。
TFS 2008 のインストールは 2 台のマシンで構成されています。1 つは SQL データベースとアプリケーション層を収容し、もう 1 つは専用のビルド サーバーとして機能します。
TFS 2010 インストール用の新しいハードウェアは 2 台のマシンで構成されています。1 つは SQL データベース、アプリケーション層、SharePoint、および Reporting Services を収容します。
これまでのところ、必要な TFS データベースのバックアップを元のサーバーから新しいサーバーに繰り返して復元し、続いて 'tfsconfig import' コマンドを実行して、データベースをチーム プロジェクト コレクションに正常にインポートしてアップグレードすることができました。チーム プロジェクト コレクションが正しく表示され、すぐに使用できるようになります。すべてのセキュリティ設定、シェルフセット、ワークスペースなどはそのままです。
私たちの問題は、ソリューションを構築しようとするときに始まります。最初は、これらのソリューションを VS 2010 形式にアップグレードしたり、プロジェクトのターゲット フレームワークを変更したりせずに構築しようとしています。
さまざまなプロジェクトをビルドすると、次のエラーが発生します。
< filename>.resx(x,y): エラー RG0000: 名前のタイプが見つかりませんでした。型名は 'System.Collections.Generic.List`1[[< クラス>, < アセンブリ>, Version=abcd, Culture=neutral, PublicKeyToken=9557797252b44220]], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'. 行 x、位置 y。[<プロジェクトファイル名>]
ResGen: エラー RG0000: 参照されたアセンブリ "< filename>.dll" を読み込めませんでした。「ファイルまたはアセンブリ '< filename>.dll' またはその依存関係の 1 つを読み込めませんでした。指定されたファイルが見つかりません。」という FileNotFoundException をキャッチしました。[<プロジェクトファイル名>]
ワークフロー関連のプロジェクトをコンパイルするときのさまざまな「あいまいな」MSBuild ターゲット参照:
C:\Program Files (x86)\MSBuild\Microsoft\Windows Workflow Foundation\v3.5\Workflow.VisualBasic.Targets (153): 'GeneratedCodeAttribute' は名前空間 'System.CodeDom.Compiler' にあいまいです。
ResGen の 32 ビット サポート フラグを変更する、64 ビット ResGen の使用を強制する、プロジェクトを VS 2010 形式にアップグレードしてターゲット Framework 4 に変更するなど、これらの問題を解消する方法についてさまざまな提案があります。
問題 1.は問題のあるプロジェクトをターゲット Framework 4 に変更することで修正できますが、この特定のプロジェクトは互換性の問題のためにまだアップグレードできず、問題 2. と 3. の解決策はまだ見つかっていません。
20 以上のチーム プロジェクトがあり、それぞれに複数のブランチがあるため、(関連する作業量のために) すべてのプロジェクト/ソリューションを手動で変更することは避けたいと考えています (特に、一部の製品は互換性の理由でまだ Framework 4 にアップグレードできないため)。 、Framework 4 MSBuild での Framework 3.5 ターゲット プロジェクトのビルドは、Microsoft が信じているほど互換性がないようです)。
誰かが役立つと思われるアイデアを持っている場合は、私に知らせてください。
乾杯、
アントニー
編集:
問題 1 は他の人にも確認されており、カスタム タイプの汎用リストを参照するリソース ファイルに関連しています。結局のところ、これらは私たちのプロジェクトでは不要だったので、単純に削除しました。そのビルドの問題は過去のものでした。
問題 2 は、おそらく問題 1 を修正した結果、自然に消えてしまったようです。
問題 3 は、Framework 3.5 を対象とする場合に、MSBuild 4 で VS2008 ワークフロー プロジェクトをビルドすることに関連しています。Microsoft は、無限の知恵で、この問題に対処しないことを選択したようです ( Connect サイトへのリンク)。それを修正するためのいくつかのアイデアがあります (フレームワークの特定のバージョンを参照し、MSBuild 3.5 を使用するようにビルド ワークフローを変更します)。どの作品。
そのため、3.5 ワークフローを構築する製品 (CRM 4.0 および SharePoint 2007/2010) が Framework 4 をサポートするか、Microsoft が問題を修正するまで、2010 へのアップグレードは保留されているようです。
編集:
Microsoft は問題があることを認め、上記の KB 番号に関連する次の情報をリリースしました: http://support.microsoft.com/kb/2023579