2010-11-30 14 views
17

Aşağıdakileri bir yapılandırma dosyasına sahibim ve tam olarak programlı olarak yapılandırılmış bir hizmetim olduğu için C# cinsinden eşdeğer bitleri bulmaya çalışıyorum. Hangi sınıfı/mülkiyeti/yöntemi aramalıyım?WCF IncludeExceptionDetailInFaults program aracılığıyla mı?

Teşekkürler.

[ServiceBehavior(IncludeExceptionDetailInFaults=true)] 
    class MyServiceImplementation : IMyService 
    { 
     /// ... 
    } 

çalışma zamanında tespit edilecek, ancak bazı durumlarda bunu yapmak istiyorsan ....

:
<behaviors> 
    <serviceBehaviors> 
     <behavior name="ServiceGatewayBehavior"> 
      <serviceMetadata httpGetEnabled="true"/> 
      <serviceDebug includeExceptionDetailInFaults="true"/> 
     </behavior> 
    </serviceBehaviors> 
</behaviors> 

cevap

31

sen her durumda bunu yapmak istiyorsanız

ServiceBehaviorAttribute kullanmak
//////////////////////////////////// 
// Must include these at the top of file 
using System.ServiceModel; 
using System.ServiceModel.Description; 
// ... 

///////////////////////////////////////////////////////////// 
// Inside whichever function initializes the service host 
// 
_serviceHost = new ServiceHost(_service); 
if (IWantToIncludeExceptionDetails()) 
{ 
    var behavior = _serviceHost.Description.Behaviors.Find<ServiceDebugBehavior>(); 
    behavior.IncludeExceptionDetailInFaults = true; 
} 
_serviceHost.Open();