3.5 へのアップグレード後の ASP.NET 2.0 アプリケーションの修正
Visual Web Developer や Visual Studio 2008 で ASP.NET 2.0 Web サイトを初めて開くと、プロジェクトを 3.5 にアップグレードするかどうかを確認するメッセージが表示されます。
Microsoft AJAX を使用していて、3.5 へのアップグレードを確認するメッセージで [はい] をクリックした人は気付いているかと思いますが、アップグレードしたアプリケーションを起動すると、以前は正常に動作していたにもかかわらず、ビルドエラーが発生します。
System.Web.Extensions Version 1.0.61025.0 を読み込むことができないと通知しています。
このエラーの説明に示されている Web.Extensions (AJAX) は、ASP.NET 2.0 用の古いバージョンです。
web.config ファイルには、この古いバージョンの参照が多数あります。2008 リリースが開始される以前、MS AJAX は別のアセンブリから読み込まれていましたが、現在は ASP.NET に "作成される" ため、アップグレード ツールは参照されたバージョンが不要であることを認識できません。
そのため、web.config を開き、1.0.61025.0 バージョンの参照を 3.5.0.0 に変更する必要があります (ただし、CTP または Futures 版を使用している場合は、その必要はありません)。
AJAX Control Toolkit を使用している場合は、もう 1 つ必要な作業があります。
Toolkit Control インスタンスに対して次のようなエラーが表示されます。
AJAX Control Toolkit の ASP.NET 3.5 対応のバージョンをダウンロードします。
メモ : ASP.NET 2.0 プロジェクトと ASP.NET 3.5 プロジェクトに対してそれぞれ別のバージョンがあります。
Windows Vista を使用している場合は、.zip ファイルを右クリックし、[プロパティ] を選択して、ファイルの "ブロックを解除" します。
次に、ファイルを任意の場所に解凍します。
コントロールに追加する [Visual Studio Toolbox] タブが 3.5 バージョンに対応していることを確認してください。
ここで、新しいツールキットに対応するようにプロジェクトをアップグレードする必要があります。その最も簡単な方法は、Visual Studio による自動アップグレードです。
ソースビューに切り替え、任意の Ajax Control Toolkit コントロールをページ内にドラッグ アンド ドロップします。
このダイアログが表示されたら、[すべての項目に適用] をオンにし、[はい] をクリックします。
次に、追加したコントロールを削除します。
Visual Studio によってコントロールの参照が更新され、正常に動作するようになります。
投稿 : 2008 年 3 月 24 日 (月) 23:22 JoeStagner
Joe Stagner - https://www.misfitgeek.com/FixingAnASPNET20AppAfterUpgradingTo35.aspx (英語) より