問題タブ [custom-errors]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - カスタム属性が適用されたメンバーを取得するにはどうすればよいですか?
C# でカスタム属性を作成していますが、属性がメソッドとプロパティのどちらに適用されるかに基づいて、さまざまなことをしたいと考えています。最初はnew StackTrace().GetFrame(1).GetMethod()
、カスタム属性コンストラクターで、どのメソッドが属性コンストラクターを呼び出しているかを確認するつもりでしたが、今では何が得られるかわかりません。属性がプロパティに適用された場合はどうなりますか? そのプロパティのインスタンスをGetMethod()
返しますか? MethodBase
C#で属性が適用されたメンバーを取得する別の方法はありますか?
更新: わかりました、間違った質問をしている可能性があります。カスタム属性クラス内から、カスタム属性が適用されたメンバー (またはメンバーを含むクラス) を取得するにはどうすればよいですか? Aaronaughtは、自分の属性が適用されたクラス メンバーを見つけるためにスタックをたどらないことを提案しましたが、属性のコンストラクター内からこの情報を取得するにはどうすればよいでしょうか?
asp.net - .NETがカスタムエラーページに私を送ったかどうかを判断しますか?
web.config:
Foo.aspx.csが実行されているときに、キャッチされなかった例外がFoo.aspxに送信されたことをどのように知ることができますか?
iis-6 - IEで動作しないiis 6カスタムエラー
webconfig でカスタム エラーを設定しましたが、.aspx ページでうまく機能しています。しかし、私は .htm または .html または .pdf エラー (主に見つからない) を処理しようとしています。調査から、.dll への拡張子での処理はパフォーマンスに適していないことがわかります (これは、.htm ページがほとんどない場合でも当てはまりますか?) そこで、IIS にアクセスして、作成したページにカスタム エラー ページを設定しました。リダイレクトします。ただし、FireFox では問題なく動作しますが、IE では標準的なホワイト ページ 404 エラーが表示されます。ブラウザの履歴設定をすべて削除しましたが、同じままです。助けていただければ幸いです。(公開したら、「公開された」Web サイトでもカスタムエラーを編集する必要があると思いますか?)
asp.net - IIS6で誤ってASP.NETバージョンを混在させた場合、processModel / serverErrorMessageFileは機能しますか?
machine.configに相対的なパスと絶対パスに設定しようとserverErrorMessageFile
しましたが、別のASP.NETバージョンとプールを共有するIIS6サーバー上のアプリにアクセスすると、大きくて醜い赤が表示されます。デフォルトの サーバーアプリケーション使用不可メッセージ。
最近(そして不思議なことに)ASP.NETアプリの1つが、アプリプールを別のASP.NETバージョンのアプリが占めるプールに変更したため(パッチ、サードパーティソフトウェア、管理者が多すぎるなど、原因はまだ特定されていません) )、そのエラーをカスタマイズして、何らかの理由でこれが再び発生した場合に、ユーザーが少し心配が少なく、役に立たないものを表示できるようにしたいと考えています。
それで、serverErrorMessageFile
IIS6では機能しませんか、ASP.NETバージョンの競合では機能しませんか、または何かを見逃しましたか?
localization - エラーメッセージを翻訳するのは「正しい」ですか?
これは、対象となる翻訳言語によっては主観的なものですが、しばらくお待ちください。
私は最近、翻訳プロジェクトに携わっています。目標は、MVCフレームワークの文字列をギリシャ語に翻訳することでした。
フレームワークの言語文字列の70%は翻訳されていますが、30%は意図的に省略されています。アプリケーションの開発者向けのエラーメッセージは翻訳しないという決定がなされました。
この背後にある理由(要するに)は次のとおりです。
デザイナー/プログラマーを対象としています。プログラマー(そしてデザイナー:))は、英語の基本的な理解が必要です。少なくとも、英語が何を意味するのかわからない場合でも、Googleで検索できるようにする必要があります。(人種差別主義者?)
開発者を対象としており、完全な世界では、Webアプリケーション自体の内部動作に関係するため、アプリケーションのエンドユーザーに表示しないでください。つまり、「データベース構成ファイルでデータベース名を設定する必要があります。」
そしておそらく最も重要なことは、開発者がエラーに関するより多くの情報/ヘルプを取得しようとすると、開発者の生活が困難になることです。たとえば、上記のエラーはGoogleで8つの結果(引用符で囲まれています)を生成しますが、ギリシャ語の翻訳は正確に0を生成します。
これは、ターゲットの翻訳言語の人気とアプリケーション自体に依存することを私は知っています。たとえば、ランダムなアプリケーションXに関するギリシャ語のエラーメッセージのドキュメントとは対照的に、ドイツ語のSAPエラーメッセージに関するドキュメントは大量にあると思います(SAPはドイツ語ですが、要点はわかります)。世界中で約500のインストール。
要約すると、アプリケーション用の言語翻訳パックを開発するとき、エラーメッセージを翻訳しますか?あなたは英語/スペイン語/ドイツ語/フランス語のような主要な言語に対してのみ行いますか?それともそのままにしておきますか?私は「正しい」または「正しい」答えを探しているのではなく、「ベストプラクティス」の答えを探しています。または、この問題があなたが経験した「公式の」標準/ポリシーで定義されている場合。
c++ - WINAPI SetLastError 対 C++ キーワード スロー
SetLastError()
WINAPIと C++ キーワードの違いは何throw
ですか? たとえば、SetLastError(5);
とthrow 5;
は同じですか?
asp.net - web.config の customErrors を半動的に変更する
基本的な考え方は、本番環境を模倣したテスト環境があるため、customErrors="RemoteOnly" です。テスト環境に対して実行し、破損を検出するテスト ハーネスを作成しました。詳細なエラーを引き戻せるようにしてほしい。しかし、customErrors="On" をオンにしたくはありません。
私は周りを見回してたくさん考えましたが、私が思いついたことはすべて不可能です. これらの点について、私は間違っていますか?
- configuration.Save() を呼び出すと web.config がディスクに書き込まれ、すべてのリクエストに対して Off になるため、実行時に customErrors をオンにすることはできません。
- Windows 上にあり、Windows 上の Subversion はシンボリック リンクを実行しないため、独自の web.config を使用してファイルを新しい最上位ディレクトリにシンボリック リンクすることはできません。
- URL マッピングを使用して、空のフォルダー dir2 を独自の web.config で作成し、dir1 のファイルを dir2 にあるように見せることはできません。web.config は適用されません。
- すべての aspx ファイルを独自の web.config を使用して dir2 にコピーすることはできません。これは、どのリンクも一貫しておらず、恐ろしいハッキーなソリューションであるためです。
- ホスト名に基づいて web.config の customErrors を変更することはできません (テスト サーバーに別の dns エントリを追加するなど)。
- それを機能させるために仮想ディレクトリの悪ふざけを行うことはできません。
そうでない場合、私がやろうとしていることを達成する方法はありますか? 特定の状況 (DNS 名またはクエリ文字列値) で、サイト全体で customErrors をオンにしますか?
asp.net - カスタム エラーを無視し、IIS エラーにフォールバックする IIS7 でホストされている ASP.NET アプリケーション
URL のルーティングを使用する C# Web フォーム ASP.NET 4.0 Web アプリケーションがあります。なんらかの理由で、web.config の system.web セクションで定義されたカスタム エラーが完全に無視され、IIS エラーがフォールバックします。
これは完全に無視されます
この部分が引き継がれます
これは、私のアプリケーションではなく IIS ネイティブにフォールバックするという事実によって、Elmah が私の 404 例外を正しくログに記録することを完全に回避するという事実を除けば、小さな不便です。
編集:そのような提案を避けるために、customErrorsが機能しなくなった後にのみhttpErrors構成を追加したので、何もありません。
asp.net - mode=remoteOnly および global.asax 処理の例外を指定した ASP.NET customErrors
次のように、Web 構成ファイルにカスタム エラーを設定しています。
上品でダンディ... 私は、mode="RemoteOnly" が開発を容易にするのが好きです...
未処理の例外については、global.asax に次のものがあります。
ただし、未処理の例外は、開発者が好む、有益な黄色の死の画面ではなく、一般的なエラー ページに移動します。global.asax のリダイレクトをコメント アウトできますが、運用環境用に変更することを忘れないでください。リダイレクトするかどうかを判断するために、リモートであるかどうかを Application_Error で確認する方法はありますか?