System.ServiceModel 4.0.0.0 System.Configuration.ConfigurationElement

COM+ integration service contracts are currently restricted to the “http://tempuri.org” namespace, and the contract name is derived from the supporting COM interface. You can, however, specify alternatives by using the comContracts section in the configuration file.

Specifies a COM+ integration service contract. This class cannot be inherited.

- Constructor
  4.0.0.0
  To be added.

  Initializes a new instance of the class.

- Property
  4.0.0.0
  System.Configuration.ConfigurationProperty("contract", IsKey=true, IsRequired=true, Options=System.Configuration.ConfigurationPropertyOptions.IsRequired | System.Configuration.ConfigurationPropertyOptions.IsKey)
  System.Configuration.StringValidator(InvalidCharacters=null, MaxLength=2147483647, MinLength=1)
  System.String To be added. To be added.

  Gets or sets the contract type.

- Property
  4.0.0.0
  System.Configuration.ConfigurationProperty("exposedMethods", Options=System.Configuration.ConfigurationPropertyOptions.None)
  System.ServiceModel.Configuration.ComMethodElementCollection To be added.

  The COM+ integration configuration tool (ComSvcConfig.exe) can be used to add specific methods from a COM interface to appear on the generated service contract.

  For example, you can use the following command to add the three named methods from the IFinances COM interface on the ItemOrders.Financial component, to the generated service contract.

  `ComSvcConfig.exe /i /application:OnlineStore /contract:ItemOrders.Financial,IFinances.{TransferFunds,AddFunds,RemoveFunds} /hosting:complus`

  When you run the ComSvcConfig.exe tool, it then generates the following service contract listing the previously mentioned methods as exposedMethod elements.

  ``

  code reference: S_UEComContractElement#101

  At service initialization time, the runtime attempts to generate a service contract by reflecting over and adding only the methods included in the list of exposedMethod elements. A trace is produced for every interface method that is not included on the service contract.

  Gets a collection of COM+ methods that are exposed when the interface on a COM+ component is exposed as a Web service.

- Property
  4.0.0.0
  System.Configuration.ConfigurationProperty("name", DefaultValue=Mono.Cecil.CustomAttributeArgument, Options=System.Configuration.ConfigurationPropertyOptions.None)
  System.Configuration.StringValidator(InvalidCharacters=null, MaxLength=2147483647, MinLength=0)
  System.String To be added. To be added.

  Gets or sets the contract name.

- Property
  4.0.0.0
  System.Configuration.ConfigurationProperty("namespace", DefaultValue=Mono.Cecil.CustomAttributeArgument, Options=System.Configuration.ConfigurationPropertyOptions.None)
  System.Configuration.StringValidator(InvalidCharacters=null, MaxLength=2147483647, MinLength=0)
  System.String To be added. To be added.

  Gets or sets the contract namespace.

- Property
  4.0.0.0
  System.Configuration.ConfigurationProperty("persistableTypes", Options=System.Configuration.ConfigurationPropertyOptions.None)
  System.ServiceModel.Configuration.ComPersistableTypeElementCollection To be added. To be added.

  Gets all the persistable types.

- Property
  4.0.0.0
  System.Configuration.ConfigurationPropertyCollection To be added. To be added. To be added.
- Property
  4.0.0.0
  System.Configuration.ConfigurationProperty("requiresSession", DefaultValue=Mono.Cecil.CustomAttributeArgument, Options=System.Configuration.ConfigurationPropertyOptions.None)
  System.Boolean To be added.

  When the service is initialized, the integration runtime ensures that this setting is consistent with the type of binding to be used. An exception is generated if one or more of the bindings for the contract are in conflict. If this property is false, a one-way channel is in use and there are any [out] parameters, an exception is also generated.

  Gets or sets a Boolean value that specifies whether the contract can only be used on sessionful bindings.

- Property
  4.0.0.0
  System.Configuration.ConfigurationProperty("userDefinedTypes", Options=System.Configuration.ConfigurationPropertyOptions.None)
  System.ServiceModel.Configuration.ComUdtElementCollection To be added.

  The COM+ integration runtime creates services by inspecting the type library. When a COM+ component contains methods that pass a VARIANT, the system cannot determine the actual types to be passed prior to runtime. Therefore, when you attempt to pass a User Defined Type (UDT) within a VARIANT, it fails because it is not a known type for serialization.

  To circumvent this problem, you can add the UDTs to the configuration file so that they can be included as known types on the appropriate service contract. In order to do so, you have to uniquely identify the UDT and the contract(s), that is, the original COM interface(s) that uses it.

  Gets a collection of User Defined Types (UDT) that is to be included in the service contract. This class cannot be inherited.