Asp.netコアアプリを初めてAzureにデプロイして実行した後、次のエラーが発生しました。
エラー。リクエストの処理中にエラーが発生しました。開発モード開発環境にスワップすると、発生したエラーに関する詳細情報が表示されます。
デプロイされたアプリケーションで開発環境を有効にしないでください。エンドユーザーに例外からの機密情報が表示される可能性があります。ローカルデバッグの場合、ASPNETCORE_ENVIRONMENT環境変数をDevelopmentに設定し、アプリケーションを再起動することで、開発環境を有効にできます。
Visual Studioでパブリッシュするときにデバッグモードとリリースモードを試し、デフォルトの移行を選択し、接続文字列も持っていることを確認したことに注意してください。可能であれば、示されているように開発モードを有効にする方法を教えてください、またはエラーをさらに説明できますか?ありがとうございました
編集:受け取った提案に従って、Cloud Explorerのログで次のことがわかりました:
Msvsmonは「127.0.0.1:50867」という名前のサーバーを起動できませんでした。次のエラーが発生しました:リモートデバッガーのインスタンスがこのコンピューターで既に実行されているか、別のプロセスが指定されたTCP/IPポートに既にバインドされています。
コメントしてくれてありがとう。 Azureポータルのアプリケーション設定に次のキーを追加することで、エラーの詳細を見つけることができました:ASPNETCORE_ENVIRONMENT with value:Development
エラー自体に関する新しい質問を作成しました: InvalidOperationException:アセンブリで 'UserSecretsIdAttribute'が見つかりませんでした
ありがとうございました
これは、ユーザーがアプリから機密の例外情報を取得しないように、プロダクションモードで使用されるセキュリティ対策です。
ASPNETCORE_ENVIRONMENTを「Production」から「Development」に変更できます。
別のオプションは、Startup.csのConfigure()メソッドのコードを変更することです。このメソッドが検証を行うのは次のとおりです。
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Error");
}
...
}
推奨されませんが、この状態を解消できます。
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseDeveloperExceptionPage();
...
}