質問: 1.質問内容 ------ 下記、開発環境で開発しています。 ・ 開発ツール:Visual Studio Professional 2015 Update 3 ・ フレームワーク:.NET Framework 4.0 ・ プロジェクトファイル:ASP.NET 4.0(出力の種類:クラスライブラリ) ・ Webサーバー:IIS Express プロジェクトファイルのプロパティは、下記の設定をしております。 ・ Web>サーバー>すべてのユーザーにサーバー設定を適用にチェック ・ Web>サーバー>仮想ディレクトリの作成をクリック 上記環境で、デバッグして正常に動作します。同じプロジェクトファイルをVisual Studio 2010 Professional SP1で開発したいと考えています。そのため、同じPCでVisual Studio 2010をインストールしました。しかし、Visual Studio 2010でプロジェクトファイル(hogehoge.sln)を開くと以下のような警告メッセージが表示されます。 [Webプロジェクト hogehogeWeb に対して指定されているローカルIISのURL https://localhost:〇〇〇〇〇/が構成されていません。このプロジェクトを開くには、仮想ディレクトリを構成する必要があります。今すぐ仮想ディレクトリを作成しますか?] このダイアログに[はい]で、次の画面にすすもうとすると、 [Web https://localhost:〇〇〇〇〇/をASP.NET 4.0用に構成する処理に失敗しました。このサイトを正しく動作するためには、このサイトを手動でASP.NET 4.0用に構成する必要があります。ローカルコンピューターでサーバー"https://localhost:〇〇〇〇〇/"が見つかりませんでした。ローカルIISサーバーが、セキュリティで保護された通信をサポートするように構成されていることを確認してください] と、再び警告メッセージが表示されます。 プロジェクトファイルを開いた後、デバッグしようとすると、 [IIS Express Webサーバーを起動できません。指定した開始URLは無効です。https://localhost:〇〇〇〇〇/] と表示されて、デバッグに失敗します。 どのように上記問題を解決したらよろしいでしょうか? 質問内容で不足している点がございましたらご指摘ください。回答確認が遅れることはございますが、必ずチェックします。どうぞよろしくお願いします。 2.開発環境 ------ ・ Visual Studio 2010 Professional Service Pack 1
回答: > > ・プロジェクトファイル:ASP.NET 4.0(出力の種類:クラスライブラリ) > > ・Web>サーバー>仮想ディレクトリの作成をクリック > > > 上記の「クラスライブラリ」と「仮想ディレクトリの作成をクリック」というところが気になるのですが、とにかく ASP.NET Web Forms アプリを Visual Studio 2015 のテンプレートを利用して Web アプリケーションプロジェクト(Web サイトプロジェクトではなくて)として作って IIS Express で(ローカル IIS ではなく)動かしているということでいいのですよね? (用語の意味が分からなければググって調べてください。それでも分からなければここで聞いてください) 自分も VS2010 と VS2015 を同じ PC(OS は Windows 10 Pro 64-bit)にインストールして使ってますので、VS2015 で IIS Express 上で動く .NET 4 Web Forms アプリを Web アプリケーションプロジェクトとして作って試してみました。 そのアプリを VS2010 で開こうとすると、質問者さんと同様な "Web プロジェクト xxxx に対して指定されているローカル IIS の URL http//localhost:xxxxx/ が構成されていません・・・" という警告が出るのは再現できました。 検証してないので想像が入ってますが、以下のようなことではないかと思います。 VS2010 で IIS Express 上で Web アプリを動かすには以下の記事の 2 つめの画像にある設定が必要です。一方、VS2015 ではその設定は不要です(メニューに現れません)。 IIS Express をインストールしました 設定すると applicatonhost.config ファイルの sites 要素に以下のような設定が追加されます。 ``` ``` VS2010 と VS2015 とでは IIS Express が使用する applicatonhost.config ファイルが異なるのが問題です。詳しくは以下の記事を見てください。 ApplicationHost.config の場所 VS2015 では自動的に上記のような site 要素の設定が applicatonhost.config ファイルに行われますが、VS2010 の IIS Express が使用する applicatonhost.config ファイルは別のものということで、VS2010 では IIS Express では実行できないということであろうと思います。 VS2015 のプロジェクト用の applicatonhost.config ファイルに自動的に設定されているはずの site 要素を、VS2010 のプロジェクト用の applicatonhost.config ファイルにコピペして試してみてはいかがでしょう? ただ、VS2010 で作るプロジェクトと VS2015 で作るプロジェクトは、同じ ASP.NET 4 の Web Forms アプリでも内容は大きく異なるので、VS2010 で最初から作った方がよさそうな気がしますけど。 VS2010 で空の Web Forms アプリのプロジェクトを作って、それに VS2015 の必要なファイルをコピペするようにしてはいかがですか?