21

構成ファイルに次のものがあります。完全にプログラムで構成されたサービスがあるため、C# で同等のビットを見つけようとしています。どのクラス/プロパティ/メソッドを探すべきですか?

ありがとう。

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

1 に答える 1

38

すべての場合にこれを行いたい場合は、次を使用しますServiceBehaviorAttribute

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

場合によってのみ実行したい場合は、実行時に決定します....

////////////////////////////////////
// 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();
于 2010-12-01T00:07:46.943 に答える