I have the following in a config file, and I am trying to find the equivalent bits in C#, as I have a service that is configured fully programmatically. What class/property/method should I look for?
Thanks.
<behaviors>
<serviceBehaviors>
<behavior name="ServiceGatewayBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
If you want to do this in all cases, use the ServiceBehaviorAttribute
:
[ServiceBehavior(IncludeExceptionDetailInFaults=true)]
class MyServiceImplementation : IMyService
{
/// ...
}
If you want to do it only in some cases, to be determined at runtime....
////////////////////////////////////
// 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();