1

Silverlight プロジェクトをホストする ASP.NET アプリケーションを見ると、Clientbin フォルダーがあり、その中には、Silverlight プロジェクトからコンパイルされた .xap ファイルがあります。

このファイルは TFS にチェックインされ続けます。TFSに無視するように指示する方法はありますか?

その理由は、ファイルがチェックインされると、再度チェックアウトするのを忘れた場合、Silverlight プロジェクトのビルド時に Visual Studio が何も表示されずに (警告は表示されますが、デバッガーの起動を妨げるものは何もありません) 失敗するように見えるためです。デバッグすると、ビルドしたばかりのバージョンではなく、TFS でバージョンが開始されます。

私がしなければならないことは、対応する xap ファイルを確認するか、単純に削除 (これもチェックアウト) してから、Silverlight プロジェクトをビルドすることです。これを行うと、Visual Studio がファイルを Clientbin ディレクトリに戻すことに気付きます (ファイルを削除すると、最初に削除が取り消されますが、チェックアウトされたままになります)。これで、正しいバージョンのバイナリをデバッグできます。

それで、私は何を間違っていますか、どうすればこれを修正できますか?

4

1 に答える 1

1

TFS2008にバグがあり、Webアプリケーションプロジェクトでこのエラーが発生しました(Webサイトプロジェクトは正常に機能するはずです)。少なくとも、それはあなたのせいではありません。これはVS2010/TFS2010で修正されました。

Silverlightフォーラムのこのスレッドには、次の提案が含まれています。

同じ問題がありました。

xapが含まれているclientbinフォルダーを削除し、チェックインしました。

_Webプロジェクト、プロパティ、Silverlightアプリで、slプロジェクトを削除し、保存して、チェックインします。

次に、Silverlightプロジェクトを読み直しました。

現在、すべての人に機能しているようで、ソース管理に再利用されていません。それがお役に立てば幸いです。

Silverlightフォーラムのこの他のスレッドには、次の提案が含まれています。

こんにちは、SL3.0では状況が変わったようです。現在、xapを正しく公開するために、次の3つの手順を使用しています。

1)SLプロジェクトのビルド後/ビルド前のスクリプトをすべて削除します。

2)ホストプロジェクト(Web)の場合:ClientBin.xapファイルに次の設定があることを確認します。ビルドアクション:コンテンツ出力ディレクトリへのコピー:コピーしないでください

3)ビルド前のイベントに、次のスクリプトを入力します:attrib -r .... \ Sources [WebProject_NAME] \ ClientBin [XAPFileName] .xap

例:attrib -r .... \ Sources \ test.web \ ClientBin \ sl.xap

(この最後の手順では、TFSビルドから「xapファイルをコピーできません」というエラーを回避します)

于 2010-07-09T00:48:59.330 に答える