The “ServiceBehavior” tag applies to scenarios/issues involving the WCF ServiceBehavior attribute, which specifies the internal service-wide execution behavior of a service contract implementation.
The ServiceBehaviorAttribute attribute is applied to a service implementation to specify service-wide execution behavior. (To specify execution behavior at the method level, use the OperationBehaviorAttributeattribute.) This attribute can be applied only to service implementations. ServiceBehaviorAttribute properties are a Windows Communication Foundation (WCF) programming model feature that enables the following behavior properties:
- The AddressFilterMode property specifies the type of filter that the dispatcher system uses to locate the endpoint that handles requests.
- The AutomaticSessionShutdown property automatically closes the session when the channel is closed and the service has finished processing any remaining messages.
- The ConcurrencyMode property controls the internal threading model, enabling support for reentrant or multithreaded services.
- The ConfigurationName property is used to declare a name for use in the name attribute of the element in a configuration file.
- The IgnoreExtensionDataObject property enables the run time to ignore extra serialization information that is not required to process the message.
- The IncludeExceptionDetailInFaults property specifies whether unhandled exceptions in a service are returned as SOAP faults. This is for debugging purposes only.
- The InstanceContextMode property specifies whether and when services and their service objects are to be recycled during an exchange with a client.
- The MaxItemsInObjectGraph property to limit on the number of items in an object graph that are serialized.
- The Name and Namespace properties control the name and namespace for the WSDL expression of the service element.
- The ReleaseServiceInstanceOnTransactionComplete property specifies whether the service object is recycled when a transaction completes.
- The TransactionAutoCompleteOnSessionClose property specifies whether outstanding transactions are completed when the session closes.
- The TransactionIsolationLevel property specifies the transaction isolation level that the contract supports.
- The TransactionTimeout property specifies the time period within which a transaction must complete or it aborts.
- The UseSynchronizationContext property indicates whether to synchronize inbound method calls with the user interface thread automatically.
- The ValidateMustUnderstand property informs the system whether it should confirm that SOAP headers marked as MustUnderstand have, in fact, been understood.
Refer to the following MSDN link for additional information: http://msdn.microsoft.com/en-us/library/system.servicemodel.servicebehaviorattribute.aspx