大規模な ASP (クラシック ASP) アプリケーションがあり、今後のリリースに向けて .NET に変換したいと考えています。時代遅れの ASP を使い続けるのは無意味であり、ゼロから書き直したくありません (Joel Spolsky がその理由を説明しています)。
ASP から ASP.NET に自動的に変換する方法はありますか?
大規模な ASP (クラシック ASP) アプリケーションがあり、今後のリリースに向けて .NET に変換したいと考えています。時代遅れの ASP を使い続けるのは無意味であり、ゼロから書き直したくありません (Joel Spolsky がその理由を説明しています)。
ASP から ASP.NET に自動的に変換する方法はありますか?
従来の ASP と ASP.NET の間で変換するツールがあったとしても、あまり良い結果は得られません。2 つの環境は根本的に異なっているだけです。Google ですばやく検索すると、いくつかの結果が表示されます。そのほとんどは、「インドの社員にやってもらいます」というものです。
今のところ、既存の ASP コードには触れないことをお勧めします。ランタイム環境は、近い将来 Microsoft によってサポートされるため、移行を急ぐ必要はありません。代わりに、ASP.NET の新しい機能に取り組み始めましょう。このようにすれば、従来の概念にとらわれず、フレームワーク (ASP.NET MVC などを含む) によって提供される新しいクールさをどのような方法でも使用できます。フィット。
もちろん、新しいコードは既存の ASP 環境で動作する必要があります。ASP と ASP.NET の間でセッション状態を共有することは、最初の要件の 1 つになる可能性が高いですが、すぐにそのような問題がさらに増えるでしょう。
このような問題の「正しい」解決策は、現在のコードと要件に完全に依存します。ASP コードで使用するために .NET コードを COM オブジェクトにラップできる場合もあれば、部分的な移植/移行が解決策になる場合もあります。 .
ただし、平均して、「2 つの世界」のアプローチは完全に実行可能であり、レガシー コードを気にすることなくエキサイティングな新機能を開発できます。
ええと、私は以前、すべての Web アプリケーションがクラシック ASP である会社で働いていました。.NET への移行が決定されたとき、168 個 (!) の Web アプリをこの新しいフレームワークに変換する方法を見つける必要がありました。これを行うために、当時利用可能なすべてのツールを試しましたが、すべて失敗しました。
最善の方法は、新しい Web サーバーを構築し、そこから最初から開始することです。これにより、新旧の統合により、アップグレードが迅速に行われ、問題なく動作することが保証されます。どの機能と外観を保持し、どれを変更するかを選択できます。古い ASP ファイル/サイトを NET プラットフォームにアップグレードするための自動ツールで時間を無駄にしないでください。これまでのところ、適切に機能したものはありません。
さらに、バックエンドにデータベースがある場合、Web アプリからデータベースへの接続で問題が発生します。
Microsoft は MSDN に、 Migrating ASP Pages to ASP.NETに関する記事を掲載しています。基本的に、コンピューター/サーバーに .net をインストールし、一度に 1 ページずつ変換するように指示されます。ASP と ASP.NET は共存できるため、各ページの名前を「aspx」に変更できます。ただし、セッション状態とアプリケーション状態は ASP ページと ASP.NET ページの間で共有されないことに注意してください (この問題の回避策については、@mdb の回答を参照してください)。
The ASP to ASP.NET Migration Assistantもありますが、プロジェクト/プログラムがまだアクティブかどうかはわかりません。このページからダウンロードして試すことができます。
http://www.asp.net/downloads/archived/migration-assistants/asp-to-aspnet/