3

私は、メインアプリケーションで一連の診断テストを実行するプログラムの作成を任されています。1つのアプリケーションはWCFoverHTTPを使用し(これは相互運用性の理由であるため、NET.TCpまたはその他の種類のWCF通信チャネルを使用するように変更することはできません)、昇格された特権で実行するべきではないため、HTTP名前空間の予約が必要です。 (https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/configuring-http-and-https)。

私の質問は、名前空間の予約がOSに依存しない方法で(C#/ .NET 3.5または4を使用して)行われたかどうかをプログラムで確認することは可能ですか?これを行うために私が考えることができる唯一の方法は、私が興味を持っているhttpチャネルを介して通信し、例外をキャッチしようとする小さなWCFアプリケーションを作成することです...しかし、それは私の問題を解決するための本当にエレガントでない方法のようです。

私が知りたい理由は、多くの顧客が予約を「忘れた」ため、電話をかけているからです。診断プログラムは、このようなよく知られた問題をチェックし、表示することを目的としています。クライアントサイトでWCFをデバッグすることは、私の楽しみの考えではないため、フレンドリーな警告です。

4

1 に答える 1

1

AFAIKは、サービスに電話をかけない限り、プログラムでそれを発見する方法はありません。ACLは、サーバー側のシステムレベルで設定されます。サーバーはそのような情報を共有しません。アクセスが許可されているかどうかを知ることができる唯一の答えです。

于 2012-08-02T20:07:49.260 に答える