私はプロジェクトに取り組んでおり、2つのサーバー、ログインサーバー、およびアプリケーションを提供するセカンダリサーバーがあります。
セカンダリサーバーはASP.NET Coreですが、最初のサーバーはASP.NET MVCです。これは、ASP.NET Coreで、Angular 2のトークンを使用してIdentityを動作させることができなかったためです。 Visual Studio 2015では、ブレークポイントはASP.NET MVCでは機能しましたが、ASP.NET Coreでは機能しませんでした。
私はそれが物事を修正することを望んでVisual Studio 2017に移動しました。ブレークポイントにヒットすることはありませんが、私のA2プロジェクトは機能していますが、メソッドが呼び出されています。
デバッガーは、コードのデバッグ情報がないと言います。私はプロジェクト設定に行って、完全なpdbを生成するように指示しました(ビルド設定の下部にある「詳細」の下)、「自分のコードのみ」をオフにし、.NETコードブレークをオンにしました。これらは私がオンラインで見つけることができるすべての提案です。私のブレークポイントはまだヒットされていません。
これは誰かを助けるかもしれません。
リリースでデバッグしている場合、ブレークポイントはヒットしません。
F5を押すか実行するときに必ずdebugを選択してください。
.NET Core Webアプリケーションをデバッグする場合は、正しいプロセスに接続していることを確認してください。 OPがw3wp.exe
プロセスに関連付けられたときに説明したのと同じ問題が発生しました。
私がdotnet.exe
プロセスにアタッチしたとき、期待通りに壊れることができました。
参考までに、これは.NET Core 2.0 Webアプリケーション上にありました。
次のリンクは.NET Coreを使用したリモートデバッグに関するものですが、その一部は引き続き適用されます。
リモートでのリモートデバッグASP.NET Core IIS Visual Studio 2017のコンピューター
リンクからの簡単な抜粋:
プロセス名の最初の文字を入力して、すばやく検索しますdotnet.exe(ASP.NET Coreの場合)。 注:ASP.NET Coreアプリの場合、以前のプロセス名はdnx.exeでした。
添付をクリックします。
以下は私のために機能しました(Visual Studio 2017):
OK、次のようにどこかからweb.configファイルを取得したようです:
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified"/>
</handlers>
<aspNetCore processPath="%LAUNCHER_PATH%" arguments="%LAUNCHER_ARGS%" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false"/>
</system.webServer>
どうやってここに来たのかはわかりませんが、コメントアウトするとデバッグが機能します...