質問: ASP.netを使って、IISで動作するWebアプリケーションを作成しています。 IISにサイト登録してアプリケーション化していますが、「Webサイトの管理」より、起動、または再起動で処理を走らせるようには出来ないものなのでしょうか? 例えば、Visual Studioでアプリケーションを作成すると、通常は、アプリケーション起動時には、main()が実行されるか、または、指定した関数が実行されますが、同じように、IISでも、サイトの起動(再起動)時に処理を実行させるか、または、アプリケーションプールから起動(再起動)した際に、実行される処理を指定する事は出来ないものなのでしょうか?
回答: IIS のバージョンさえ書いてないし、具体的に何がしたいのかわからないし、main() というのが何だか不明ですので外しているかもしれませんが・・・ 初回実行時や再起動時に 1 回だけ実行するということであれば、Global.asax の Application_Start メソッド内で実行させてはいかがですか? Visual Studio のテンプレートで ASP.NET MVC アプリを作ったことがありますか? であれば、ルーティングやフィルターなどを Application_Start メソッドで設定しているのを見たことがあると思いますが。 そういう話ではなくて、IIS へ配置後の最初のリクエスト時やアプリケーションプールのリサイクル後の最初のリクエストの応答に初期化のための時間がかかるのが困るということであれば、IIS オートスタートを利用できます。 IIS オート スタート設定による ASP.NET Web アプリケーションの初回実行時のパフォーマンス向上 https://blogs.msdn.microsoft.com/chack/2013/09/25/iis-asp-net-web-2223/ ただし、IIS7.5 以降でないと利用できませんが。