Visual Studio と .Net Framework の ASP.NET の対応するバージョン

.Net Framework の初期ビルド (Pre-beta) が公開されてから、早くも 10 年の月日が経とうとしている。 公開当初は、賛否両論あったが、現在では、Windows 開発環境のデファクトとなった。 .Net Framework は、いままで多くのバージョンがリリースされており、OS 毎の初期インストール済 .Net Framework のバージョン。さらには、OS 毎にインストール可能な .Net Framework を把握するのが難しくなった。 以下のサイトでは、.Net Framework のバージョン情報について、よく整理されている。 .NET Frameworkのバージョンを確認する方法 .NET Frameworkのバージョンを整理する ここで、疑問が生じた。たびたび、ASP.NET の... 続きを読む

IIS 7 で、特定の拡張子のファイルへのアクセスを制限する

一般的な Web アプリケーション開発においては、データストアに DBMS を利用する。 DBMS は、Web サーバーとローカルネットワーク環境で接続可能であり、HTTP 経由で DBMS へアクセスすることはできない。 小規模な Web アプリケーションでは、*.txt ファイル、*.xml ファイルをデータストアとすることがある。 この場合、IIS のデフォルトの設定では、.txt ファイル、.xml ファイルへアクセス HTTP 経由でアクセスできてしまう。 IIS のデフォルトの設定では、ディレクトリの参照が無効となっており、ディレクトリ内のファイルの一覧を表示することはできないが、ファイル名を直接してやれば HTTP 経由でのアクセスが可能。 *.txt、*.xml 等の特定の拡張子のファイルへの HTTP 経由のアクセスを制限するには、"MIME の種類" ... 続きを読む

aspx ファイルでネームスペースのエイリアスを宣言する

ASP.NET では、コードビハインドにより、aspx ファイルにコードを記述することは少ない。 更新系画面開発では、コードビハインドは、生産性を高めるが、参照系画面開発では、コードビハインドを使わないという選択肢もある。 コードビハインドを使わない場合は、aspx ファイルのみで完結するので、ポータビリティが高い。 つまり、*.dll ファイルを扱う必要がない。ASP.NET の前身である ASP と同様に扱うことができる。 ただし、aspx ファイル上にコードを記述した場合は、コンパイルによりチェックが行われないので注意する。 今回は、aspx ファイルにコードを記述する際に、ネームスペースのエイリアスを宣言する方法を紹介する。 以下は、通常のネームスペース宣言。C# の "using System.Web.UI.WebControls;" と同義。 ... 続きを読む

IIS ASP.NET 複数バージョン混在時のエラー

前回の記事では、Windows Server 2008 の IIS 7 では、バージョンの異なる .NET Framework ランタイムをアプリケーションプール単位で混在させることができることを紹介した。 今回は、複数のバージョンの異なる ASP.NET アプリケーションをホストする際の注意点を説明する。 一つのサイトに複数のバージョンを混在させると、以下のようなメッセージが出力され、エラーが発生する場合がある。 ファイルまたはアセンブリ 'Masudaq.Library.Net'、またはその依存関係の 1 つが読み込めませんでした。このアセンブリは現在読み込まれているランタイムより新しいランタイムでビルドされているため、読み込むことができません。 スタック トレース: [BadImageFormatEx... 続きを読む

IIS ASP.NET バージョンの変更と混在

Windows Server 2008 の IIS では、ASP.NET のランタイムの .NET Framework のバージョンを変更、さらには、混在させることもできる。 Windows Server 2008 の IIS のデフォルトは、.NET Framework v2.0 だが、昨今では、.NET Framework v4.0 がリリースされている。 Visual Studio のプロジェクトのプロパティの [対象のフレームワーク] で、".NET Framework 4" を選択し、ASP.NET アプリケーションを開発した場合は、運用サーバーの IIS のランタイムも ".NET Framework 4" にする必要がある。 まずは、運用サーバー側に .NET Framework 4 がインストールされていない場合は、.NET Framework 4 をインストール... 続きを読む