web-dev-qa-db-ja.com

スタートアップアプリがコンソールアプリの場合、iisexpressがソリューションでWebサイトを実行しないようにします

いくつかのプロジェクトを含むソリューションがあります。 Webプロジェクトの開始オプションを次のように設定した場合でも:

  1. ページを開かないでください。外部アプリケーションからの要求を待ちます。
  2. カスタムWebサーバーを使用します。ベースURL:http://localhost

そしてスタートアッププロジェクトは:

  1. 単一のスタートアッププロジェクト
  2. (Webサイトではなく)コンソールアプリケーションを選択します

デバッグの開始を押すと、IIS Expressの起動(タスクバーに表示されます)。IIS Expressの起動を防ぐにはどうすればよいですか?コンソールアプリケーションであり、IIS Expressを実行したくない。

実際、ソリューション内のすべてのWebサイトはIISで起動し、それらは私のマシン上のリソースを不必要に消費します。

31
Hoppe

これを行う簡単な方法があります。WebプロジェクトのプロパティF4(右クリック->プロパティではありません)で、「デバッグ時に常に開始」をfalseに設定します。

enter image description here

61
Aleksey L.

[プロパティページ]-> [開始オプション]で:開始アクションを設定= "ページを開かない...";サーバーの設定->カスタムサーバーを使用し、ベースURLを空白のままにします。

5
RJ Programmer

Visual Studio 2013の場合、次のように構成しました。

開始アクション:ページを開かないでください。

サーバー:外部ホスト

プロジェクトのURL: http:// NotAStartupApp /

0
Brian Lakstins

@Aleksey L.の答えを拡張するには、Notepadのようなプレーンテキストエディタで実際にこれを行うことができます。

あなたのprojectname.csproj.userファイルの場合、AlwaysStartWebServerOnDebugノードの値がFalseに設定されていることを確認してください。

projectname.csproj.user

<Project >  
  <ProjectExtensions>
    <VisualStudio>
      <FlavorProperties>
        <WebProjectProperties>
            ..          
          <AlwaysStartWebServerOnDebug>False</AlwaysStartWebServerOnDebug>
            ..          
        </WebProjectProperties>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>
</Project>

または、テキストエディターなしでこれを行うには、Powershellを使用できます

$file = 'projectname.csproj.user'
$x = [xml] (Get-Content $file)
$x.Project.ProjectExtensions.VisualStudio.FlavorProperties.WebProjectProperties.AlwaysStartWebServerOnDebug = 'False'
$x.Save($file)
0
Frank Fu

IIS Express in Windowsをアンインストールしましたが、機能しました。VSからファイルを公開した後、自動的に設定がIIS Expressを指すように変更され、変更されません。私のウェブサイトプロジェクトのために、IISに何があっても。これが誰かのために働くことを願っています。

0
Rohan Gadiya