System.ServiceModel 4.0.0.0

Implement to modify, examine, or extend some aspect of service-wide execution at the application level:

Use the method to change run-time property values or insert custom extension objects such as error handlers, message or parameter interceptors, security extensions, and other custom extension objects.

Use the method to examine the description before indigo1 constructs the executing service to confirm that it can execute properly.

Use the method to pass to a binding element the custom information for the service so that it can support the service correctly.

objects can make use of any of these methods, but often only one is important; in such cases the unused methods can return without a value.

All of the methods pass and objects as a parameters. The parameter is for examination only; if you modify these objects the execution behavior is undefined.

To perform the customization task for which it is intended, the object must be added to the property prior to the construction of the service runtime. There are three ways to do this:

Programmatically add the custom service behavior to the property prior to the point where the method is called on the object.

Create a custom attribute that implements and use it to mark service classes that are to be modified. When a object is constructed, indigo2 uses reflection to discover the attributes on the service type. If any attributes implement , they are added to the behaviors collection on .

Extend the class to support the specification of the behavior in an application or machine configuration file. See the Example section for more information.

Examples of service behaviors in indigo2 include the attribute, the , the and the behavior.

Provides a mechanism to modify or insert custom extensions across an entire service, including the .

- Method
  4.0.0.0
  System.Void `` `` `` `` To be added. To be added.

  Use the method to add custom data objects to the collection that binding elements can use to acquire extra information to enable them to support the contract.

  This method is called once for each listen URI. For example, if a service has four endpoints, and two of them have the same listen URI, then this method gets called three times. The reason is that the target each channel stack and there is one channel stack for each listen URI. Because each call receives those endpoints at that listen URI, two calls each get a single , and one call gets a collection of two objects.

  All of the methods pass and objects as a parameters. The parameter is for examination and insertion of customizations only; if you otherwise modify these objects the execution behavior is undefined.

  Provides the ability to pass custom data to binding elements to support the contract implementation.

  The host of the service. The service endpoints.
- Method
  4.0.0.0
  System.Void `` `` To be added.

  Implement the method to inspect or modify the object that is being constructed in order to support some custom execution scenario.

  All of the methods pass and objects as a parameters. The parameter is for examination and insertion of customizations only; if you otherwise modify these objects the execution behavior is undefined.

  Provides the ability to change run-time property values or insert custom extension objects such as error handlers, message or parameter interceptors, security extensions, and other custom extension objects.

  The host that is currently being built.
- Method
  4.0.0.0
  System.Void `` `` To be added.

  Use the method to confirm whether the current service can execute properly according to your scenario.

  All of the methods pass and objects as a parameters. The parameter is for examination and insertion of customizations only; if you otherwise modify these objects the execution behavior is undefined.

  Provides the ability to inspect the service host and the service description to confirm that the service can run successfully.

  The service host that is currently being constructed.