CallbackDebugBehavior.IncludeExceptionDetailInFaults Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia wartość, która określa, czy obiekty wywołania zwrotnego klienta zwracają informacje o wyjątkach zarządzanych w błędach protokołu SOAP z powrotem do usługi.
public:
property bool IncludeExceptionDetailInFaults { bool get(); void set(bool value); };
public bool IncludeExceptionDetailInFaults { get; set; }
member this.IncludeExceptionDetailInFaults : bool with get, set
Public Property IncludeExceptionDetailInFaults As Boolean
Wartość właściwości
true
jeśli program WCF zwraca informacje o wyjątku wywołania zwrotnego zarządzanego klienta w błędach protokołu SOAP na potrzeby debugowania usługi w komunikacji dwustronnej; w przeciwnym razie , false
. Wartość domyślna to false
.
Przykłady
Poniższy przykład kodu przedstawia plik konfiguracji klienta, który nakazuje programowi WCF zwrócenie informacji o wyjątku zarządzanym z obiektu wywołania zwrotnego klienta w komunikatach SOAP.
<client>
<endpoint
address="http://localhost:8080/DuplexHello"
binding="wsDualHttpBinding"
bindingConfiguration="WSDualHttpBinding_SampleDuplexHello"
contract="SampleDuplexHello"
name="WSDualHttpBinding_SampleDuplexHello"
behaviorConfiguration="enableCallbackDebug">
</endpoint>
</client>
<behaviors>
<endpointBehaviors>
<behavior name="enableCallbackDebug">
<callbackDebug includeExceptionDetailInFaults="true"/>
</behavior>
</endpointBehaviors>
</behaviors>
Uwagi
IncludeExceptionDetailInFaults Ustaw właściwość na true
z pliku konfiguracji aplikacji lub programowo, aby umożliwić przepływ informacji o wyjątkach zarządzanych w obiekcie wywołania zwrotnego klienta z powrotem do usługi na potrzeby debugowania.
Przestroga
Zwracanie informacji o wyjątkach zarządzanych do usług może być zagrożeniem bezpieczeństwa, ponieważ szczegóły wyjątku ujawniają informacje o wewnętrznej implementacji klienta, która może być używana przez nieautoryzowane usługi. Ponadto, chociaż CallbackDebugBehavior właściwości można również ustawić programowo, można łatwo zapomnieć o wyłączeniu IncludeExceptionDetailInFaults podczas wdrażania.
Ze względu na związane problemy z zabezpieczeniami zdecydowanie zaleca się:
Plik konfiguracji aplikacji służy do ustawiania wartości IncludeExceptionDetailInFaults właściwości na
true
.Robisz to tylko w kontrolowanych scenariuszach debugowania.
Aby uzyskać więcej informacji na temat problemów z zabezpieczeniami związanych z informacjami o wyjątkach zarządzanych, zobacz Określanie i obsługa błędów w kontraktach i usługach.
Aby włączyć lub wyłączyć funkcję wywołania zwrotnegoDebugBehavior przy użyciu pliku konfiguracji
behaviorConfiguration
Dodaj atrybut do elementu klienta <endpoint> dla aplikacji klienckiej WCF. Zachowanie CallbackDebugBehavior jest zachowaniem punktu końcowego. Zachowania punktu końcowego są konfigurowane na<endpoint>
elementach; zachowania usługi są konfigurowane w elementach <usługi> .Dodaj do lub utwórz sekcję <endpointBehaviors> i dodaj <element zachowania> do tej z nazwą zgodną z wartością atrybutu
behaviorConfiguration
z kroku 1. Zachowania punktu końcowego są dodawane do użycia w elemecie klienta <endpoint> przy użyciu <elementu endpointBehaviors> .<Dodaj element callbackDebug> do <elementu zachowania> z kroku 2 i włącz lub wyłącz różne właściwości odpowiednie dla danego scenariusza.
Aby zapoznać się z konkretnym przykładem, zobacz sekcję Przykład. Można również ustawić wartości tego atrybutu przy użyciu <elementu callbackDebug> w pliku konfiguracji aplikacji klienckiej.