Microsoft Windows Communication Foundation Line of Business Adapter SDK

Welcome to the WCF LOB Adapter SDK Help, which includes resources to help you develop, deploy, and use adapters created with the WCF LOB Adapter SDK.

Getting started icon | Getting Started Information about features, prerequisites, and topics for users who are new to the WCF LOB Adapter SDK.
Tutorials icon | WCF LOB Adapter SDK Tutorials Step-by-step instructions for learning how to use the WCF LOB Adapter SDK.
Community resources icon | Feedback and Community WCF LOB Adapter SDK community resources, such as blogs and forums to help you share techniques for developing and using WCF LOB adapters.

� 2014 Microsoft Corporation. All rights reserved.


Getting Started
See Also

This section contains information that is relevant to users who are new to the WCF LOB Adapter SDK. It contains topics about installation, required skills and knowledge, common developer tasks, available community resources, and tutorials.

In This Section

  • Prerequisite Skills and Knowledge

  • Common Developer Tasks

  • Feature Additions in WCF LOB Adapter SDK

  • Understanding the WCF LOB Adapter SDK

  • System Requirements

  • Feedback and Community

  • Privacy Information

  • Known Issues

  • WCF LOB Adapter SDK Tutorials

See Also

Concepts

Microsoft Windows Communication Foundation Line of Business Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Prerequisite Skills and Knowledge

The WCF LOB Adapter SDK is intended for developers who need to integrate dynamic and complex line-of-business systems as part of an enterprise application integration effort. You can download the latest version of the WCF LOB Adapter SDK at http://go.microsoft.com/fwlink/?LinkID=189401.

To write an adapter using the WCF LOB Adapter SDK, you must be moderately experienced with these technologies:

  • Visual Studio .NET and the development of .NET solutions

  • Programming with the .NET Framework

  • Windows Communication Foundation (WCF)

  • .NET XML Programming API

  • Web Service Description Language (WSDL) and XML Schema

You should also be familiar with the operation of the target system as well as the technology used to expose the target system API.

See Also

Concepts

Understanding the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Common Developer Tasks

Adapter developers design and develop WCF-based adapters to line-of-business systems using the WCF LOB Adapter SDK API and tools as well as the Microsoft .NET Framework.

To help adapter developers be as effective as possible, the following lists provide links for tutorials and general information about developing adapters using WCF LOB Adapter SDK.

Concepts

  • What Is the WCF LOB Adapter SDK?

  • The Role of Windows Communication Foundation

Development

  • WCF LOB Adapter SDK Overview

  • Key Components of the WCF LOB Adapter SDK

  • "Extending the Channel Layer" at http://go.microsoft.com/fwlink/?LinkId=100316

Tutorials

  • WCF LOB Adapter SDK Tutorials

To the adapter consumer, consuming an adapter is the same as consuming a WCF service. For more information, see the WCF documentation at http://go.microsoft.com/fwlink/?LinkID=89231.

The following topics in particular are useful reading for adapter consumers:

  • "What Is Windows Communication Foundation?" at http://go.microsoft.com/fwlink/?LinkId=100312

  • "Fundamental Windows Communication Foundation Concepts" at http://go.microsoft.com/fwlink/?LinkId=100313

  • "Hosting Services" at http://go.microsoft.com/fwlink/?LinkId=100314

  • "Building Clients" at http://go.microsoft.com/fwlink/?LinkId=100315

See Also

Concepts

Getting Started

� 2014 Microsoft Corporation. All rights reserved.


Feature Additions in WCF LOB Adapter SDK

This topic provides a brief description of the new feature that was introduced in WCF LOB Adapter SDK 2010.

AppFabric Connect

WCF LOB Adapter SDK 2010 introduced a new feature “AppFabric Connect”, which combines rich proven features of BizTalk Server and the flexible development experience of .NET to allow users to easily develop simple integration applications. AppFabric Connect enables users to:

  • Develop custom .NET applications that require connectivity to backend Line of Business (LOB) systems like SAP, Oracle DB, Oracle E-Business Suite, Seibel, and SQL Server without writing custom code for LOB connectivity.

  • Develop XML-based data transformation using the easy-to-use and rich user interface of BizTalk Mapper that can be launched and used right within a .NET project.

AppFabric Connect uses Windows Workflow Foundation (WF) activities to programmatically access BizTalk’s LOB connectivity and data transformation capabilities. This enables users to easily create new composite applications using the WF model, which can be deployed, hosted, managed in Windows Server AppFabric. AppFabric Connect also enables a class of scenarios (such as Web-based queries) that are best effort, short running and don’t require the durability/persistence provided by the traditional BizTalk Server message box architecture. For more information on how to use AppFabric Connect, see BizTalk + AppFabric, Better Together (http://go.microsoft.com/fwlink/?LinkId=190331).

See Also

Concepts

Getting Started

� 2014 Microsoft Corporation. All rights reserved.


Understanding the WCF LOB Adapter SDK

This section contains information to help you better understand the WCF LOB Adapter SDK.

In This Section

  • What Is the WCF LOB Adapter SDK?

  • Fundamental Concepts

  • The Role of Windows Communication Foundation

  • WCF LOB Adapter SDK Overview

  • Key Components of the WCF LOB Adapter SDK

  • BizTalk Server and the WCF LOB Adapter SDK

See Also

Concepts

Getting Started

� 2014 Microsoft Corporation. All rights reserved.


What Is the WCF LOB Adapter SDK?

The WCF LOB Adapter SDK is a collection of tools and components that provide a consistent framework for developing reusable, metadata-rich adapters for line-of-business systems. Adapters written using the WCF LOB Adapter SDK are surfaced as custom WCF bindings and can be consumed by a WCF-capable client.

Features of the WCF LOB Adapter SDK

The WCF LOB Adapter SDK was designed to meet the needs of developers building adapters that expose the data and operations of line-of-business systems. Some of the features provided by the WCF LOB Adapter SDK include:

  • A consistent mechanism for exposing transport and data protocols.

  • Exposure of the adapter as a WCF binding.

  • Extensibility through the WCF channel architecture.

  • WCF LOB Adapter Development Wizard.

  • Common metadata search and browse user interface using the Add Adapter Service Reference Visual Studio Plug-in.

  • BizTalk Server design-time integration using the Consume Adapter Service Add-in.

    Note
    This functionality requires BizTalk Server 2006 R2 or later.

Because the WCF LOB Adapter SDK is an extension to WCF, it also provides the following features:

  • A unification of existing .NET Framework communication technologies.

  • Support for cross-vendor interoperability, including reliability, security, and transactions.

  • An explicit service orientation.

Components of the WCF LOB Adapter SDK

The WCF LOB Adapter SDK provides a consistent and repeatable experience for both the adapter developer and the adapter consumer through a set of run-time and design-time components, a .NET object model, and support components including:

Component | Description
WCF LOB Adapter Development Wizard | Provides step-by-step guidance in the creation of WCF LOB Adapter SDK projects within Visual Studio .NET.
WCF LOB Adapter Service Development Wizard | Provides step-by-step guidance in creating a Web project to host an adapter in Internet Information Services (IIS).
WCF LOB Adapter SDK run-time system | Supports the WCF LOB Adapter SDK by extending the WCF channel architecture and providing other run-time services.
WCF LOB Adapter SDK object model | A collection of classes, types, and interfaces that support common adapter tasks such as metadata normalization, caching, connection management and pooling, and messaging inspection.
Add Adapter Service Reference Plug-in | Gives custom .NET applications the ability to consume adapters developed using the WCF LOB Adapter SDK.
Consume Adapter Service Add-in | Gives BizTalk Server the ability to consume adapters developed using the WCF LOB Adapter SDK.

See Also

Concepts

BizTalk Server and the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Fundamental Concepts

This topic provides a high-level view of the WCF LOB Adapter SDK architecture and fundamentals. It identifies key concepts and how they fit together.

If you are ready to write a simple adapter, see WCF LOB Adapter SDK Tutorials.

WCF LOB Adapter SDK Fundamentals

The WCF LOB Adapter SDK consists of a runtime, a collection of APIs, and design-time tools for creating adapters that expose data and operations from line-of-business systems. Adapters manage messages between the adapter consumer and the line-of-business system and can consist of metadata, data, or other information.

Metadata

One of the distinguishing characteristics of an adapter written with the WCF LOB Adapter SDK and one implemented using the Windows Communication Foundation (WCF) Service Model object model is metadata. Metadata describes the data, operations, properties, and other dynamic characteristics of a system and is used by the adapter consumer to discover, consume, and interact with a target system.

A typical WCF service programming lifecycle includes a WCF service developer creating and hosting a service. A WCF service endpoint consists of an address, a binding, and a contract, also known as the "A, B, and C's" of WCF. The address is the location of the service, while the binding specifies the protocols and the transports used to communicate with the service. A WCF service developer defines a contract using the WCF System.ServiceModel object model, provides its implementation in the form of a WCF service, and hosts it using ServiceHost. The SvcUtil.exe and/or Add Adapter Service Reference Plug-in can be used to build the client corresponding to the published service's metadata. Once the service is up and running, the design-time tool can be run against the service endpoint address to generate the WCF proxy in a preferred language and an app.config file for the client implementation that corresponds with the details of the WCF service.

A WCF LOB adapter developer, on the other hand, implements the metadata object model provided in the WCF LOB Adapter SDK to define the operations and types supported by the adapter. Since the outbound adapter is a WCF custom binding, it is hosted in-proc within the consumer application. Once the adapter is installed on a computer, Add Adapter Service Reference Plug-in can be used to browse and search metadata, and to consequently generate the WCF proxy in a preferred language along with an app.config file that contains the adapter configuration details. The contract is created and generated on-demand by the WCF LOB adapter by querying the live metadata available in the line-of-business system.

For example, a line-of-business system may adjudicate different types of health care claims and may contain a growing collection of unique operations, data types, business rules, and reports created by users of the system. If this information is exposed as a static contract, it has to be modified as new business objects are added to the system or simply not provide access to new business objects. However, if information about the dynamic business object within the claims adjudication system is browsable (and searchable), new objects such as a new validation rule for institutional claims or a new report are exposed and can be consumed.

Connection Management

Before information can be exchanged with the line-of-business system, the adapter must establish a connection. A connection links the adapter (the consumer) to the line-of-business system (the provider) and controls the connection lifecycle including opening, closing, aborting, and verifying connection validity. Based on the requirements of the line-of-business system, the connection may require one or more credentials and connection parameters such as server name, default directory, or port number.

Connection lifetime is managed by a connection pool. When a new connection is requested by the adapter, the WCF LOB Adapter SDK provides an existing connection if one is available; otherwise, a new connection is created and placed into the pool and then provided to the adapter. When the adapter is done with the connection, it is placed back into the pool. Connections that are idle beyond a certain threshold are closed and removed from the pool.

Windows Communication Foundation

The WCF LOB Adapter SDK is an extension of the WCF, a unified programming model for building service-oriented applications with managed code. Adapters written using the WCF LOB Adapter SDK are surfaced as WCF bindings that can be consumed by any WCF-capable application.

Microsoft WCF LOB Adapter SDK Terms

binding

Defines how an adapter communicates. Bindings are created by the WCF LOB Adapter SDK and define the transport, encoding, and other details. There may be one or more binding elements in a binding.

channel

The implementation of a binding element. Collections of channels for a binding stack on top of each other to create a channel stack.

message

A self-contained unit of data that may consist of several parts including a body and headers.

metadata

Describes the characteristics of the line-of-business system including the operations and data that are available.

operation

The functions and methods exposed by a line-of-business system. They operate on data and perform useful activities such as adjudicating claims, creating an order, or querying for sales data.

See Also

Concepts

BizTalk Server and the WCF LOB Adapter SDK
WCF LOB Adapter SDK Tutorials

� 2014 Microsoft Corporation. All rights reserved.


The Role of Windows Communication Foundation

The WCF LOB Adapter SDK extends the WCF channel architecture and depends on the WCF runtime to provide the basic messaging services required to expose adapter functionality and exchange information.

The WCF LOB Adapter SDK provides a framework for writing adapters, surfacing them in WCF, and complementing them with common adapter elements such as metadata and connection pooling. It also consists of support tools to enhance the experience such as the Add Adapter Service Reference Plug-in for .NET applications and Consume Adapter Service Add-in for BizTalk Server applications and the WCF LOB Adapter Development Wizard.

It is the responsibility of the WCF to expose services to a wide array of consuming applications, to manage the flow of messages between different endpoints, and to provide an SDK and tools to customize, configure, and monitor message flow. For example, a developer can customize the behavior of a WCF LOB Adapter SDK by extending its channel with custom message handlers.

The relationship between the WCF LOB Adapter SDK and WCF is shown in the following high-level architectural figure.

The WCF LOB Adapter SDK is built on top of WCF as an extension to the WCF channel model. It provides a domain-specific and simplified object model and tool set for building adapters as custom WCF channels. Adapters built using the WCF LOB Adapter SDK are surfaced as custom WCF bindings.

The following figure shows the outbound message exchange using a given adapter binding.

The following figure shows the inbound message exchange using a given adapter binding.

For more information about the WCF channel model, see "Channel Model Overview" at http://go.microsoft.com/fwlink/?LinkId=82614.

WCF Services and the WCF LOB Adapter SDK

When developing a typical WCF service, the first step is to create the contract for the service that is shared with the outside world that describes how to communicate with the service. This contract essentially specifies the collection and structure of messages required to access the operations offered by the service.

Once this contract is exposed as a service, the Service Model Metadata Utility Tool (Svcutil.exe) can be used to create a WCF client to consume it. The contract provides information about a static set of operations and messages that must not change. For more information about this tool, see http://go.microsoft.com/fwlink/?LinkId=99821.

In contrast, adapters built using the WCF LOB Adapter SDK provide a dynamic set of metadata about the collection of operations and data that are available within a line-of-business system. The line-of-business system often has too many operations to be described in one contract and may have new operations added to respond to emerging business needs.

For example, a line-of-business system may provide account management operations. After identifying a need to streamline the creation of new customer accounts, the company updates the line-of-business system to include the new operation. An adapter built using the WCF LOB Adapter SDK exposes this operation in the metadata it provides to clients.

At design time, the WCF LOB Adapter SDK-based adapter generates contracts dynamically to meet the needs of the line-of-business system.

The ASDK provides Add Adapter Service Reference Plug-in and Consume Adapter Service Add-in tools for the adapter consumer to generate dynamic contracts at design time.

At runtime, when the message flows into the adapter written using the WCF LOB Adapter SDK, the adapter often must take a series of actions on the receive message. These actions include:

  • Looking up metadata pertaining to the message

  • Opening the message

  • Interpreting the message

  • Calling the appropriate functions in the line-of-business system

In the case of a WCF service, messages simply pass through without being resolved through metadata.

See Also

Concepts

BizTalk Server and the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


WCF LOB Adapter SDK Overview

The WCF LOB Adapter SDK is built on top of the WCF Channel Model and provides design-time and run-time extensions for adapter developers to create adapters to line-of-business systems that have large and dynamic metadata. An adapter created using the WCF LOB Adapter SDK is surfaced to the consumer as a custom WCF binding. The following figure shows the internal architecture and main components of WCF LOB Adapter SDK.

Handler

Handler defines the message exchange patterns supported by the adapter.

The following table summarizes the available handler types, their function, and the WCF channel(s) they map to.

Handler Type | Function | Maps to WCF Channels
IOutboundHandler | Supports one-way send or request/response pattern. | IOutputChannel, IRequestChannel
IAsyncOutboundHandler | Supports asynchronous one-way send or request/response pattern. | IOutputChannel, IRequestChannel
IInboundHandler | Supports one-way receive or reply patterns. | IInputChannel, IReplyChannel
IAsyncInboundHandler | Supports asynchronous variants of methods one-way receive or reply patterns. | IInputChannel IReplyChannel
IMetadataBrowseHandler | Supports browsing of metadata on the target system. | IRequestChannel
IMetadataSearchHandler | Supports searching of metadata on the target system. | IRequestChannel
IMetadataResolverHandler | Supports retrieval of metadata from the target system. | IRequestChannel

Channel Implementation

An adapter built using the WCF LOB Adapter SDK is basically a transport channel (System.ServiceModel.Channels.IServiceListner). An adapter built using the WCF LOB Adapter SDK is surfaced to the consumer as a WCF binding, where the binding is used to create the channel stack. This binding can be considered a peer to other predefined WCF bindings such as BasicHttpBinding, WsHttpBinding, and NetTcpBinding, and can be set via app.config or in code by the client application when calling a service. This binding contains an ordered set of binding elements, with the adapter being the key binding element that derives from the T:System.ServiceModel.Channels.TransportBindingElement class. In an outbound scenario, the WCF LOB Adapter SDK runtime uses a channel factory to create the adapter (that is, the transport channel). In an inbound scenario, the WCF LOB Adapter SDK runtime makes use of channel listeners for incoming channels in a service application. Both run-time as well as design-time messages pass through this component.

Connection Factory, Connection, and Connection URI Builder

ConnectionFactory provides a factory pattern for creating connections based on URI and user credentials. For more information, see IConnectionFactory.

Connection defines a low-level communication contract with the target system, and encapsulates native communication APIs and connection handles. For more information, see IConnection.

The Connection Uri Builder allows adapter consumers to programmatically build connection URIs without specific knowledge of syntax. For more information, see ConnectionUri.

Connection Management

Connection management is responsible for the lifetime management of the connections of an adapter. It internally keeps a pool of the connections ready for use. This connection pool is credential and URI-based. The credential contains a user name and password that define the security context the connection runs under.

When the same credentials and URI are used, any channel being opened under the same connection factory obtains the connection from the pool if there is one available already.

Connection pool manager keeps records of how many open connections there are to that URI regardless of the credentials and across the boundaries of the channel factory. For example, in one system, you can have two users who have different credentials, which means there are two channel factories connecting to the system.

Note
The adapter may be limited with respect to the number of connections it can support, generally limited by system resources.

To help adapter developers configure the connection pool settings, the WCF LOB Adapter SDK provides two classes, ConnectionPoolSettings and ConnectionManagerSettings.

Metadata Management

Metadata management is responsible for the object-oriented representation of the caching of the metadata for the target system. Metadata can be held in a common cache accessible across all credentials, or it can be cached per credential basis.

The metadata life cycle begins with its design-time definitions and continues through usage during runtime. At design time, adapter developers must identify the set of operations, and must generate the necessary WSDL and client side proxy. At runtime, the Adapter Framework-based adapters use the predefined metadata to interpret the messages returned from the target system calls.

To help adapter writers configure the metadata setting, the Adapter Framework provides three classes, CacheSettings, MetadataSettings and CommonCacheSettings.

WSDL Builder

WSDL Builder provides automatic WSDL generation from the WCF LOB Adapter SDK's internal metadata object model (it can be overridden for scenarios that require custom WSDL generation).

See IWsdlRetrieval for more information.

Metadata Browse/Search

Metadata browse/search allows for browsing and searching all LOB metadata.

For more information, see IMetadataRetrievalContract.

Metadata Generation

Metadata generation allows for generating code for the client (for outbound scenarios) and for the service (for inbound scenarios) based on operations selected by the adapter consumer. Even though we recommend that adapter consumers use the tools Add Adapter Service Reference Plug-in (Consume Adapter Service Add-in in case of BizTalk applications), the WCF LOB Adapter SDK provides a public interface GetMetadata to retrieve the System.Web.Services.Description.ServiceDescription, which represents a Web Service Description Language (WSDL) containing information about selected operations and types. Adapter writers make use of the metadata object model for the WCF LOB Adapter SDK that includes classes derived from OperationMetadata and TypeMetadata to describe the details of each operation and type.

See Also

Concepts

Planning and Architecture
Technical Reference

� 2014 Microsoft Corporation. All rights reserved.


Key Components of the WCF LOB Adapter SDK

Developing an adapter using the WCF LOB Adapter SDK requires the use of many of the following basic components:

  • Connection components to help establish and maintain a connection to the line-of-business system.

  • Handler components define and implement procedures used to work with inbound and outbound messages and metadata operations.

  • Metadata components define and manipulate the metadata used to communicate with the line-of-business system.

  • Custom components provide support for transactions, reliable messaging, and security.

  • Core components tie all of the components together and ensure seamless integration into WCF.

These components are the focus of this topic.

Connection Components

The connection components include interfaces and classes that help define and control the lifetime of connections as well as manage uniform resource identifiers (URI) query attributes and user attributes. Connection components include the interfaces and classes described in the following table.

Connection Component | Required? | Description
ConnectionUri | Required | Base class for providing a customized URI building experience for users who will consume your adapter.
IConnection | Required | Interface that defines the behavior for a connection. Developers must implement this interface to define a connection to the target system.
IConnectionFactory | Required | Base class for a connection factory. Developers will subclass when defining the connection factory for the target system.
ConnectionPoolSettings | Optional | Contains settings that control the behavior of the connection pool. Developers may want to tune these values based on the behavior of the target system.
ConnectionManagerSettings | Optional | Contains static settings that control the behavior of the connection pool. Developers may want to tune these values for their target system.

The WCF LOB Adapter Development Wizard will create implementations of IConnection ConnectionUri and IConnectionFactory regardless of the wizard options chosen. These implementations will contain code for supporting options chosen in the wizard (including connection properties in the connection URI) but the adapter developer will have to provide implementations for Open, Close and other methods of IConnection and ConnectionUri.

Handler Components

The handler components provide support for different message exchange patterns including inbound, outbound, asynchronous inbound, asynchronous outbound, and metadata search, browse, and resolve operations. Handler components include the interfaces and classes described in the following table.

Handler Component Required? Description

IAsyncInboundHandler

Optional

Used to receive messages asynchronously from the target system. Asynchronous support is optional.

IAsyncOutboundHandler

Optional

Used to send messages asynchronously from the target system. Asynchronous support is optional.

IInboundHandler

Optional

Used to receive messages from the target system. Developers should implement this handler if the adapter needs to listen for messages from the target system.

IOutboundHandler

Optional

Provides support for sending messages to the target system. While optional, it is required for the request-response message pattern. Most fundamental communication technologies are based on this pattern including HTTP, RPC, and many others.

IMetadataBrowseHandler

Optional

This handler is implemented when the adapter supports metadata browse. Though optional, developers will often implement this handler to provide a list of operations available in the target system.

IMetadataResolverHandler

Optional

This handler must be implemented when the adapter retrieves and returns metadata from the target system that represents system-specific logic and data types. Metadata can be retrieved from the actual target system, or it can be created to represent the capabilities of the target system. For example, an FTP adapter could create GET and PUT operations.

While not required, developers will generally implement this handler to provide information about a specific operation.

IMetadataSearchHandler

Optional

This handler is implemented when the adapter supports metadata search.

The Adapter Development Wizard will create implementations of IAsyncOutboundHandler, IOutboundHandler, IInboundHandler and the metadata handlers based on the choices made by the developer. Support code is provided; however, the adapter developer will have to supply code to start and stop the inbound listener and other code marked by TODO comments.

Metadata Components

The metadata components are designed to hold two types of metadata information: type metadata and operation metadata.

  • Type metadata describes the data types that are available in the target system and includes the name of the type, its array properties if it is an array, and whether it is a simple XSD schema type or a complex type.

  • Operation metadata describes the operations that are available in the target system. Properties include a return type, a list of parameters, and operation name.

Metadata support within an adapter is optional but recommended. One of the benefits of using the WCF LOB Adapter SDK to build an adapter versus implementing functionality as a WCF service is the ability to expose and bind to a dynamic set of operations.

The classes available for describing and working with metadata are described in the following table.

Metadata Component | Description
ComplexQualifiedType | A class representing a complex qualified type for an adapter. For example, if the target system is a relational database, a table, row, or user-defined procedure return type might all be custom qualified types.
OperationMetadata | Base class for representing operation metadata for the target system. For example, you could subclass OperationMetadata to contain information about stored procedures in an adapter targeting a relational database.
OperationMetadataTraceRecord | Provides a way to capture operation metadata to a trace file. The trace collects information such as unique ID, last time accessed, timestamp, display name, original name, parameters, and other details.
ParameterizedOperationMetadata | Provides a way of defining attributes of an operation such as parameters and return type.
OperationParameter | Describes a parameter used to invoke an operation on the target system. Properties include the name, original name, parameter direction, and a flag indicating whether the parameter is empty or not.
OperationParameterDirection | An enumerated type that describes the direction of a parameter for an operation. A parameter can be inbound only (In), outbound only (Out), or bidirectional (InOut).
OperationResult | Represents an operation result. Can be OperationResult.Empty for operations that return void or null and a string, integer, or other value depending on the operation.
QualifiedType | Designed to be the base class for qualified type properties and is used to describe properties of type metadata for a target system.
QualifiedTypeContainer | Provides a container for a set of related qualified types.
SimpleQualifiedType | Describes the properties of type metadata for a target system when that type maps directly to a W3C XSD schema type. For a list of allowable types, see "XmlTypeCode Enumeration" at http://go.microsoft.com/fwlink/?LinkId=82912.
TypeMember | Provides a way for defining a simple or complex data member in the structured type metadata.
TypeMetadata | Base class for representing type metadata for the target system.
StructuredTypeMetadata | Provides a way of defining a data structure that contains complex and/or simple type members.
TypeMetadataCollection | Provides a container for a set of related type metadata.
TypeMetadataTraceRecord | Provides a way to capture type metadata to a trace file. The trace collects information such as unique ID, last time accessed, timestamp, and other details.

Custom Components

Custom components provide support for transactions, security, reliable messaging and other features that are highly dependent on the target system. As an adapter developer using the WCF LOB Adapter SDK, you will need to understand the capabilities of the target system and determine the extent to which you want to support them.

Core Components

Core components provide a set of base classes and interfaces that enable the adapter to be plugged into WCF. The core components are described in the following table.

Core Component | Required? | Description
Adapter | Required | The base class of an adapter written using the WCF LOB Adapter SDK. It is responsible for interacting with the WCF channel architecture
AdapterBinding | Required | Class that contains settings that control various settings for the adapter including the connection pool (ConnectionPoolSettings), cache (CacheSettings), metadata (MetadataSettings), and messaging (MessagingSettings).

Custom adapters are exposed through WCF bindings. For more information, see the WCF documentation at http://go.microsoft.com/fwlink/?LinkId=100308.

The Adapter Development Wizard will create implementations of Adapter, AdapterBinding, StandardBindingElement, and StandardBindingCollectionElement to expose the adapter binding to the WCF configuration system. The Adapter Development Wizard will also generate an implementation of BindingElementExtensionElement to enable Adapter to be used within a WCF custom binding from a computer or application configuration file.

For more information about StandardBindingElement, StandardBindingCollectionElement, and BindingElementExtensionElement, see the WCF documentation.

For more information about configuring an adapter written with the WCF LOB Adapter SDK, see How to Deploy an Adapter.

See Also

Concepts

Understanding the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Using Connection Components

The connection components include interfaces and classes that help define and control the lifetime of connections as well as manage uniform resource identifiers (URI) query attributes and user attributes. Connection components include the interfaces and classes described in the following table.

Connection Component | Required? | Description
ConnectionUri | Required | Base class for providing a customized URI building experience for users who will consume your adapter.
IConnection | Required | Interface that defines the behavior for a connection. Developers must implement this interface to define a connection to the target system.
IConnectionFactory | Required | Base class for a connection factory. Developers will subclass when defining the connection factory for the target system.
ConnectionPoolSettings | Optional | Contains settings that control the behavior of the connection pool. Developers may want to tune these values based on the behavior of the target system.
ConnectionManagerSettings | Optional | Contains static settings that control the behavior of the connection pool. Developers may want to tune these values for their target system.

The Adapter Development Wizard will create implementations of IConnection, ConnectionUri, and IConnectionFactory regardless of the wizard options chosen. These implementations will contain code for supporting options chosen in the wizard (including connection properties in the connection URI) but the adapter developer will have to provide implementations for Open, Close and other methods of IConnection and ConnectionUri.

See Also

Concepts

Key Components of the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Using Messaging Components

The handler components provide support for different message exchange patterns including inbound, outbound, asynchronous inbound, asynchronous outbound, and metadata search, browse and resolve operations. Handler components include the interfaces and classes described in the following table.

Handler Component Required? Description

IAsyncInboundHandler

Optional

Used to receive messages asynchronously from the target system. Asynchronous support is optional.

IAsyncOutboundHandler

Optional

Used to send messages asynchronously from the target system. Asynchronous support is optional.

IInboundHandler

Optional

Used to receive messages from the target system. Developers should implement this handler if the adapter needs to listen for messages from the target system.

IOutboundHandler

Optional

Provides support for sending messages to the target system. While optional, it is required for the request-response message pattern. Most fundamental communication technologies are based on this pattern including HTTP, RPC, and many others.

IMetadataBrowseHandler

Optional

This handler is implemented when the adapter supports metadata browse. Though optional, developers will often implement this handler to provide a list of operations available in the target system.

IMetadataResolverHandler

Optional

This handler must be implemented when the adapter retrieves and returns metadata from the target system that represents system-specific logic and data types. Metadata can be retrieved from the actual target system, or it can be created to represent the capabilities of the target system. For example, an FTP adapter could create GET and PUT operations.

While not required, developers generally implement this handler to provide information about a specific operation.

IMetadataSearchHandler

Optional

This handler is implemented when the adapter supports metadata search.

The Adapter Development Wizard will create implementations of IAsyncOutboundHandler, IOutboundHandler, IInboundHandler and the metadata handlers based on the choices made by the developer. Support code is provided; however, the adapter developer will have to supply code to start and stop the inbound listener and other code marked by TODO comments.

See Also

Concepts

Key Components of the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Using Metadata Components

The metadata components provide support for handling metadata requests and for describing types and operations in the target application. Handlers control how metadata requests are dealt with while type and operation metadata describe the data types and operations exposed by the target system.

An adapter does not have to support metadata. All of the metadata components are optional. However, the uses for an adapter that does not expose the operations and types available in a target application are limited. One of the benefits of using the WCF LOB Adapter SDK to build an adapter versus implementing functionality as a WCF service is the ability to expose and bind to a dynamic set of operations.

Note
If you need to expose a limited set of static methods, you should consider using the WCF.

The components available for handling, describing, and working with metadata are described in the following table.

Metadata Component | Description
ComplexQualifiedType | A class representing a complex qualified type for an adapter. For example, if the target system is a relational database, a table, row, or user-defined procedure return type might all be custom qualified types.
OperationMetadata | Base class for representing operation metadata for the target system. For example, you could subclass OperationMetadata to contain information about stored procedures in an adapter targeting a relational database.
OperationMetadataTraceRecord | Provides a way to capture operation metadata to a trace file. The trace collects information such as unique ID, last time accessed, timestamp, display name, original name, parameters, and other details.
ParameterizedOperationMetadata | Provides a way of defining attributes of an operation such as parameters and return type.
OperationParameter | Describes a parameter used to invoke an operation on the target system. Properties include the name, original name, parameter direction, and a flag indicating whether the parameter is empty or not.
OperationParameterDirection | An enumerated type that describes the direction of a parameter for an operation. A parameter can be inbound only (In), outbound only (Out), or bidirectional (InOut).
OperationResult | Represents an operation result. Can be OperationResult.Empty for operations that return void or null and a string, integer, or other value depending on the operation.
QualifiedType | Designed to be the base class for qualified type properties and is used to describe properties of type metadata for a target system.
QualifiedTypeContainer | Provides a container for a set of related qualified types.
SimpleQualifiedType | Describes the properties of type metadata for a target system when that type maps directly to a W3C XSD schema type. For a list of allowable types, see XmlTypeCode Enumeration (http://go.microsoft.com/fwlink/?LinkId=195363).
TypeMember | Provides a way for defining a simple or complex data member in the structured type metadata.
TypeMetadata | Base class for representing type metadata for the target system.
StructuredTypeMetadata | Provides a way of defining a data structure that contains complex and/or simple type members.
TypeMetadataCollection | Provides a container for a set of related type metadata.
TypeMetadataTraceRecord | Provides a way to capture type metadata to a trace file. The trace collects information such as unique ID, last time accessed, timestamp, and other details.

See Also

Concepts

Key Components of the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Using Custom Components

Custom components provide support for transactions, security, reliable messaging and other features that are highly dependent upon the target system. As an adapter developer using the WCF LOB Adapter SDK, you will need to understand the capabilities of the target system and determine the extent to which you want to support them.

See Also

Concepts

Key Components of the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Using Core Components

Core components provide a set of base classes and interfaces that enable the adapter to be plugged into WCF. The core components are described in the following table.

Core Component | Required? | Description
Adapter | Required | The base class of an adapter written using the WCF LOB Adapter SDK. It is responsible for interacting with the WCF channel architecture
AdapterBinding | Required | Class that contains settings that control various settings for the adapter including the connection pool (ConnectionPoolSettings), cache (CacheSettings), metadata (MetadataSettings), and messaging (MessagingSettings).

Custom adapters are exposed through WCF bindings. For more information, see the WCF documentation at http://go.microsoft.com/fwlink/?LinkId=100308.

The Adapter Development Wizard will create implementations of Adapter, AdapterBinding, StandardBindingElement, and StandardBindingCollectionElement to expose the adapter binding to the WCF configuration system. The Adapter Development Wizard will also generate an implementation of BindingElementExtensionElement to enable Adapter to be used within a WCF custom binding from a computer or application configuration file.

For more information about StandardBindingElement, StandardBindingCollectionElement, and BindingElementExtensionElement, see the WCF documentation.

For more information about configuring an adapter written with the WCF LOB Adapter SDK, see How to Deploy an Adapter.

See Also

Concepts

Key Components of the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


BizTalk Server and the WCF LOB Adapter SDK

This section contains information about the relationship of BizTalk Server and WCF LOB Adapter SDK. Information contained in this section includes comparisons of the two different frameworks provided by each and tips for migrating the BizTalk Server custom adapter.

In This Section

  • Understanding the Relationship Between the WCF LOB Adapter SDK and BizTalk Server

  • Differences Between the WCF LOB Adapter SDK and the BizTalk Server Adapter Framework

  • Migrating BizTalk Server Custom Adapters to the WCF LOB Adapter SDK

See Also

Concepts

BizTalk Server and the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Understanding the Relationship Between the WCF LOB Adapter SDK and BizTalk Server

This topic discusses the relationship of the WCF LOB Adapter SDK and adapters built using the SDK to BizTalk Server.

WCF LOB Adapter SDK provides an SDK and set of tools and components that enable developers to write sophisticated adapters for line-of-business systems containing a dynamic set of operations and data. Adapters are exposed as WCF custom bindings and as such can be consumed by applications that can consume WCF bindings.

BizTalk Server is a product that enables message flow and coordination between a diverse set of enterprise systems; communication between BizTalk Server and external systems are handled through adapters that take external messages and transform them into a format suitable for processing by BizTalk Server.

These two technologies intersect in the BizTalk Server WCF adapter. It can consume bindings exposed by WCF and therefore consume the operations and data exposed by the adapter written with the WCF LOB Adapter SDK.

The following figures provides a high-level overview of how the BizTalk WCF adapter and WCF LOB adapters are used within BizTalk Server to communicate with target LOB systems.

See Also

Concepts

BizTalk Server and the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Differences Between the WCF LOB Adapter SDK and the BizTalk Server Adapter Framework

While both the WCF LOB Adapter SDK and BizTalk Server Adapter Framework provide an SDK for writing custom adapters, there are significant differences in the amount of support provided in terms of API's and tools and also in the reusability of the adapter once it is completed.

Some of the primary differences between the two frameworks are summarized in the following table.

Feature | WCF LOB Adapter SDK | BizTalk Server Adapter Framework
API | .NET Framework 4.5 and .NET Framework 4.5.1 assembly, provides help classes for metadata processing, connection management, and messaging | COM, provides basic support for adapter operations.
Adapter exposure | Exposed as WCF binding; available to any application that can consume a WCF binding including BizTalk Server 2006 R2, BizTalk Server 2009, BizTalk Server 2013, and BizTalk Server 2013 R2 (using the WCF adapter). | Exposed only to BizTalk Server; not reusable by other applications.
Tools | Adapter Development Wizard, metadata browser for Visual Studio .NET | n/a
Extensibility | Yes (as WCF channel extension) | No

Adapters created using the BizTalk Adapter Framework are consumable from only within BizTalk Server. On the other hand, adapters written to the WCF LOB Adapter SDK are surfaced as custom WCF bindings. This broadens their reach to any application that consumes a service, which for all practical purposes is any .NET application including BizTalk Server. The WCF-based adapters are used within BizTalk Server using the BizTalk WCF adapter and continue to exist in parallel with the native BizTalk adapters.

Note
The WCF LOB adapters cannot be used in BizTalk Server versions prior to BizTalk Server 2006 R2.

See Also

Concepts

BizTalk Server and the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Migrating BizTalk Server Custom Adapters to the WCF LOB Adapter SDK

You can use the BizTalk Adapter Pack Migration Tool to migrate the adapters based on the BizTalk Adapter Framework to adapters based on the WCF LOB Adapter SDK. For more information about the tool, see BizTalk Adapter Pack Migration Tool (http://go.microsoft.com/fwlink/?LinkId=195364).

Note
Microsoft recommends using this tool only to migrate the LOB adapters as part of the BizTalk Adapters for Enterprise Applications to adapters as part of the BizTalk Adapter Pack.

See Also

Concepts

BizTalk Server and the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


System Requirements

The WCF LOB Adapter SDK is a set of components that enable developers to build adapters that expose operations and data in a consistent, reusable way. It depends on the WCF to provide the communication infrastructure.

You can download the latest version of the WCF LOB Adapter SDK at http://go.microsoft.com/fwlink/?LinkID=189401.

System Requirements

Windows Communication Foundation.

Microsoft .NET Framework 4.5 and .NET Framework 4.5.1.

Operating System Resources

The WCF LOB Adapter SDK depends on many of the same system resources as the Windows Communication Foundation to function. The following table lists those resources.

Resource | Description
Microsoft Distributed Transaction Coordinator (MSDTC) | Required to support OleTx transactions.
Message Queuing (MSMQ) | Required to support reliable messaging.
Internet Information Services (IIS) | Required if you want to use IIS to host your application.
Windows Process Activation Service (WAS) | Required if you want to use WAS to host your application.

Specific adapter implementations may have other operating system dependencies depending on the requirements of the target system. See the documentation for the system to learn about specific dependencies.

See Also

Concepts

WCF LOB Adapter SDK Overview

� 2014 Microsoft Corporation. All rights reserved.


Feedback and Community

We appreciate your comments and concerns about the WCF LOB Adapter SDK documentation. If you are looking for more information, or want to share techniques with others who are interested in the WCF LOB Adapter SDK, visit the MSDN forum for the BizTalk Server Adapters and Adapter Pack at http://go.microsoft.com/fwlink/?LinkId=100381.

� 2014 Microsoft Corporation. All rights reserved.


Privacy Information

Microsoft is committed to protecting end-users' privacy. When you build an adapter using WCF LOB Adapter SDK, it may impact your end-users' privacy. For example, your adapter may explicitly collect and send user credentials, or it may send and receive sensitive information from a line-of-business system. The WCF LOB Adapter SDK does not send any information to Microsoft from your application unless you or the user chooses to send it to us.

Windows Communication Foundation Privacy

The WCF LOB Adapter SDK is an extension to the WCF and as such relies on many of the services it provides. For more information about WCF privacy, see http://go.microsoft.com/fwlink/?LinkId=82607.

Microsoft WCF LOB Adapter SDK Privacy

The WCF LOB Adapter SDK is an API. As a developer, you can provide custom logging and tracing capabilities to facilitate debugging, tuning, and auditing in the adapters you create. If you do provide such capabilities, you must consider the type of information you will record and how information will be restricted so that only authorized individuals have access. This can involve the following:

  • Setting and maintaining appropriate access control lists (ACLs) on log and trace files.

  • Filtering sensitive data before it is written to a file.

  • Encrypting sensitive data before it is written to a file.

See Also

Concepts

Microsoft Windows Communication Foundation Line of Business Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Known Issues

This topic describes known issues associated with the WCF LOB Adapter SDK. It also provides resolutions for some of these issues.

General

Unable to Change SDK Features by Using Add or Remove Programs on a Computer Running Windows Vista

Problem: Using Add or Remove Programs in Control Panel fails to change features for the WCF LOB Adapter SDK on a computer running Windows Vista.

Resolution: Instead of using Add or Remove Programs to modify your installation, rerun the Setup.exe program.

Base Runtime

Applications Using Transactions in Asynchronous Proxy Must Explicitly Call Proxy.Open

Problem: Applications that use transactions with an adapter in an asynchronous proxy must explicitly call proxy.Open for the transactions to flow.

Resolution: This can be done once the proxy is generated by the Add Adapter Service Reference Plug-in in the client program as shown:

Copy Code
EchoAdapterClient echoAdapterProxy = new EchoAdapterClient("mEchoConfiguration");
echoAdapterProxy.Open();
...

IDuplexChannel Shape Not Supported

Problem: The IDuplexChannel channel shape is not supported in this release.

Resolution: Use the WCF Channel Model to create a WCF custom binding that supports duplex channels.

Request Schema Generated With or Without In or Out Parameters

Problem: In the ExportInputXmlSchema method of the class OperationMetadata, the request schema is always generated, even though it may not contain any in or out parameters.

Providing Multiple Operation Namespaces

Problem: If the adapter developer provides multiple operation namespaces for one operation group, the WCF LOB Adapter SDK generates an invalid WSDL. The generated input and output message part for each operation will not be linked to the right schema reference.

Resolution: Ensure that each OperationMetadata.OperationGroup is mapped to a single OperationMetadata.OperationNamespace.

Overloaded Operations Not Supported

Problem: In this release, the Dynamic Contract Generator (WSDL Builder) component of the SDK does not support overloaded operations, that is, operations with the same name but different signature.

Fault Contract Not Supported

Problem: In this release, the Dynamic Contract Generator (WSDL Builder) component of the SDK does not support fault contract metadata.

Failure When Receiving Messages

Problem: When receiving, there is a possibility of the adapter failing when processing certain messages if the Receive Timeout binding property is set to a small value. The error returned will be specific to your adapter.

Workaround: Set the Receive Timeout binding property to a large value, for instance 23:59:59, which is the maximum.

Adapter Stalls During Message Processing

Problem: If there are a large number of requests to the adapter, processing of the work items may appear to stall.

When opening a new connection, the adapter queues a work item which will be processed by the .NET threadpool. Once a connection is opened, further work items are queued to process each message. If the threadpool has been exhausted, a deadlock may occur where requests to open new connections are blocking requests to process messages.

Resolution: Eventually the requests will time out and processing will continue, however the recommended resolution is to either decrease the number of messages to be processed or increase the number of threads in the threadpool.

To increase the number of threads, modify the value of MaxWorkerThreads. For further information on MaxWorkerThreads, see http://go.microsoft.com/fwlink/?LinkId=128708.

Design-Time Proxy and Schema Generation Tools

Limitations with Select Contract Type

Problem: The “Select contract type” filtering is applied to the category tree and the available operation list. If the adapter consumer selects a category node containing both inbound and outbound operations, all of them will be part of the WSDL and the generated proxy, regardless of the “Select contract type” filtering.

Resolution: Select individual operations instead of selecting the entire category.

Error with Add Adapter Service Reference Visual Studio Plug-In

Problem: In a BizTalk project in Visual Studio, if a proxy has already been generated by using the Add Adapter Service Reference Plug-in, generating another proxy from the same adapter will generate this error: "The namespace ‘<global namespace>’ already contains a definition for ‘{contract name}’ when compiling the project."

This release does not allow editing of the proxy.

Resolution: Remove the extraneous proxy files in the BizTalk project. If additional operations need to be included in the generated proxy, delete the proxy file and use the Add Adapter Service Reference Plug-in to search or browse metadata, and regenerate the proxy.

Error with Consume Adapter Service BizTalk Project Add-In

Problem: As in the previous issue, in a BizTalk project in Visual Studio, if common types exist in the schemas generated from the Consume Adapter Service BizTalk Project Add-in, the BizTalk project fails to compile.

Resolution: Remove the extraneous XML Schema files in the BizTalk project, use the Consume Adapter Service reference to search or browse required metadata, and regenerate the new XML Schema files.

Error With RootNode TypeName in BizTalk Projects

Problem: In a BizTalk project in Visual Studio, if the schemas generated from the Consume Adapter Service BizTalk Project Add-in contain invalid characters or reserved words for the RootNode TypeName property, the following error will occur at compile time: “Node <node reference> - Specify a valid .NET type name for this root node. The current .NET type name of this root node is invalid (it is a reserved BizTalk Keyword or is an invalid C# identifier).

Resolution: Select the root node referenced in the error and, in Properties, remove any illegal characters or reserved words from the RootNode TypeName property.

Metadata Generation Tool Limitations

Problem: If the adapter developer provides an XML Schema structure in an OperationMetadata and/or TypeMetadata derived class, and the XML Schema contains constructs that are ignored or forbidden by DataContractSerializer, the metadata generation tool falls back to using the XmlSerializer for serialization.

Resolution: Either remove the forbidden constructs in the schema, or use the WCF LOB Adapter SDK Metadata Object Model to generate the XML Schema definitions that comply with DataContractSerializer.

Binding Name Property Does Not Take Effect

Problem: Changing the binding name property on the Binding Properties General tab of the Add Adapter Service Reference dialog box will not take effect.

Resolution: Use the AdapterBinding derived class to change the name as follows:

Copy Code
[Browsable(false)]
public new virtual string Name
{
     set
     {
          base.Name = value;
     }
     get
     {
          return base.Name;
     }
}

Timeout when Retrieving Metadata

Problem: If the adapter contains many operations, you may encounter a timeout when retrieving metadata using tools such as the Add Adapter Service Reference Plug-in, WCF Adapter Service Development Wizard, or Consume Adapter Service Add-in if you attempt to retrieve many operations at once.

Resolution: Reduce the number of operations selected.

Avoid Generating Schemas which Reference an External Import

Problem: You should avoid generating schemas that contain one or more references to external imports. If this is done, the external links will not be followed.

Setup

Setup Halts While Checking Disk Space

Problem: When installing WCF LOB Adapter SDK, you may receive a dialog box stating that setup is checking for available disk space and setup will not continue.

Resolution: When this problem occurs, you can work around this issue by performing a silent install of WCF LOB Adapter SDK at a command prompt. For example:

Copy Code
Msiexec.exe /package AdapterFramework.msi /qr

BizTalk Server Developer Tools Required

Problem: When the target system has Visual Studio and Microsoft BizTalk Server without developer tools, the WCF LOB Adapter SDK setup will fail. This is because it requires BizTalk Server developer tools to be present on the computer in order to install the Consume Adapter Service Add-in.

Resolution: Be sure the target computer has BizTalk Server installed with developer tools before installing the WCF LOB Adapter SDK.

Corrupt BizTalk Server Installation Causes SDK to Fail

Problem: A corrupt installation of BizTalk Server may cause the SDK installation to fail with the following error: "DirectoryNotFound exception."

Resolution: Uninstall and reinstall BizTalk Server.

Documentation

Broken Links

Problem: In this release, some links from the documentation to types not within the Microsoft.ServiceModel.Channels or Microsoft.ServiceModel.Channels.Common namespaces may be broken.

Some F1 Help Broken

F1 (context-sensitive) Help for overloaded constructors is not supported in this release.

See Also

Concepts

Getting Started

� 2014 Microsoft Corporation. All rights reserved.


WCF LOB Adapter SDK Tutorials

The WCF LOB Adapter SDK tutorials contain information about how you can use WCF LOB Adapter SDK to develop feature-rich line of business adapters to facilitate enterprise application integration within your enterprise. By using the WCF LOB Adapter SDK, the operations and data you expose can be consumed by any application that can consume a WCF binding, including BizTalk Server.

The tutorials contain simple examples built around a set of predefined operations. You do not need an actual line of business system available to complete these tutorials. However, details provided in the tutorials can be applied to your adapter development needs, from understanding metadata to writing outbound handlers and beyond.

Use the following tutorials to learn how to use key parts of the WCF LOB Adapter SDK:

  • Tutorial 1: Develop the Echo Adapter. Provides step-by-step instructions for creating an adapter that exposes string operations from a set of predefined methods that act as the line of business system. The adapter provides an implementation for many of the common handlers in the WCF LOB Adapter SDK including search, browse, inbound and outbound operations. At the successful completion of this tutorial, you will have a functional adapter.

  • Tutorial 2: Consume the Echo Adapter from .NET. Provides step-by-step instructions for consuming the Echo Adapter developed in Tutorial 1: Develop the Echo Adapter from a .NET project. You will add an adapter service reference to a new project, and provide code to test the inbound and outbound operations of the Echo Adapter.

  • Tutorial 3: Hosting the Echo Adapter in IIS. Provides step-by-step instructions for hosting the Echo Adapter developed in Tutorial 1: Develop the Echo Adapter in the Internet Information Services (IIS) process. You will also use svcutil.exe (ServiceModel Metadata Utility) to create a simple client application to consume the EchoString operation of the hosted adapter.

These tutorials provide a structured approach to understanding some of the key features of the WCF LOB Adapter SDK. They can be completed with no knowledge of the WCF LOB Adapter SDK or WCF. However, you will learn more if you understand the concepts behind adapter design, and understand how adapter design is facilitated in the WCF LOB Adapter SDK. For more information, see:

  • Common Developer Tasks

  • Key Components of the WCF LOB Adapter SDK

Before you begin these tutorials, you should review the requirements in Before You Begin the Tutorials.

You can download a completed Echo Adapter including test code and installation script at http://go.microsoft.com/fwlink/?LinkID=96184.

In This Section

  • Before You Begin the Tutorials

  • Tutorial 1: Develop the Echo Adapter

  • Tutorial 2: Consume the Echo Adapter from .NET

  • Tutorial 3: Hosting the Echo Adapter in IIS

See Also

Concepts

Getting Started

� 2014 Microsoft Corporation. All rights reserved.


Before You Begin the Tutorials

This section provides details about the concepts you should be familiar with to get the most out of the tutorials, as well as the software required to complete them.

What to Install

To start the tutorials, you must have the following software installed on your computer.

  • Visual Studio 2013

  • Internet Information Services (IIS)

  • Microsoft .NET Framework 4.5 and .NET Framework 4.5.1.

  • WCF LOB Adapter SDK (available at http://go.microsoft.com/fwlink/?LinkID=189401)

To complete Tutorial 3, you must have the following software installed on your computer.

  • Microsoft Office SharePoint Server

  • Microsoft Office SharePoint Server SDK

Caution
Do not perform these tutorials in your production environment.

To download the completed Echo Adapter including test code and installation script, see http://go.microsoft.com/fwlink/?LinkID=96184.

Prerequisites

The tutorials assume that you are familiar with the following:

  • Object-oriented software design and development

  • Windows Communication Foundation (WCF), specifically, channel model programming and service model programming

  • XSD, XML, WSDL, and the relationship between Web Services Description Language (WSDL) and an API

  • C# programming language

  • .NET Framework

Before starting the tutorials, it will be helpful if you have reviewed the conceptual topics of this SDK, and have a general understanding of channels in WCF, including the types within the Channels and Common namespaces. For more information about channels, see the “Channel Model Overview” at http://go.microsoft.com/fwlink/?LinkId=119419.

See Also

Concepts

WCF LOB Adapter SDK Tutorials

� 2014 Microsoft Corporation. All rights reserved.


Tutorial 1: Develop the Echo Adapter

In this tutorial, you will develop a functional adapter using the WCF LOB Adapter SDK. The adapter simulates the operations of a fictitious line-of-business system to illustrate many of the key features of the WCF LOB Adapter SDK including:

  • Synchronous Inbound

  • Synchronous Outbound

  • Metadata Browse

  • Metadata Search

  • Metadata Resolve

This section contains various features supported by the echo adapter. They are message exchange, operation metadata, connection properties, and adapter properties.

Message Exchange Patterns

The echo adapter supports the following two message exchange patterns:

  • Synchronous outbound, that is, the consuming client sends the WCF request message via the adapter to the target system, and then waits to receive a WCF response message from the target system via the adapter. This is the most common message exchange pattern for an adapter. To support synchronous outbound, implement the IOutboundHandler interface.

  • Synchronous inbound, that is, the consuming client listens for data or events from the target system via the adapter. To support synchronous inbound, implement the IInboundHandler interface.

For more information about the message exchange patterns, see Using Messaging Components.

Note
The Adapter Development Wizard shows the message exchange pattern as data flow in the UI.

Metadata Support

The echo adapter supports metadata browsing, searching, and resolving capabilities. Typically, the browsing and searching retrieve operations from an LOB system. For the echo adapter, an LOB system is a set of predefined operations, as shown below:

Copy Code
EchoMainCategory
        Echo/EchoStrings
        Echo/EchoGreetings
        Echo/EchoCustomGreetingFromFile
        Echo/OnReceiveEcho

The following is the definition of each operation:

Name | Operation Definition | Description | Direction
EchoMainCategory | Category | Categorizes the operations. | N/A
Echo/EchoStrings | string[] EchoStrings(string data) | Echoes the incoming string a specified number of times to the calling client. | Outbound
Echo/EchoGreetings | Greeting[] EchoGreetings(Greeting greeting) | Echoes the incoming Greeting object a specified number of times to the calling client. | Outbound
Echo/EchoCustomGreetingFromFile | CustomGreeting EchoCustomGreetingFromFile(Uri greetingInstancePath) | Echoes the Greeting object by reading its instance from a file. The Greeting object's metadata is obtained from a predefined XSD file. | Outbound
Echo/OnReceiveEcho | void OnReceiveEcho(Uri path, long content) | Echoes the location and length of a file dropped in the specified folder. | Inbound

Adapter Properties

The adapter exposes the following adapter properties.

Name | Category | Data Type | Description
Count | Misc | Int32 | Used to echo the input the specified number of times to the calling client. Default = 5
EnableConnectionPooling | Misc | Boolean | Used to enable or disable connection pooling for the adapter. Default = true, meaning that the connection pooling is enabled in runtime engine of the WCF LOB Adapter SDK.
InboundFileFilter | Inbound | String | Used for the inbound scenario only and used by the FileSystemWatcher to monitor the files of the extension. Default=*.txt
InboundFileSystemWatcherFolder | Inbound | String | Used to set the folder where the files will be dropped for FileSystemWatcher to raise notification to the adapter. Default = c:\inbound\watcher.

Connection Properties

The echo adapter exposes the following connection properties.

Name | Data Type | Description
Application | String | The application name within the LOB system. This property is for illustrative purpose. The echo adapter does not involve any LOB system. Default = lobapplication
EnableAuthentication | Boolean | When true, the adapter expects a value in the username field within the client credentials. Default = false
Hostname | String | The server name where an LOB system resides. This property is for illustrative purpose. The echo adapter does not involve any LOB system. Default = lobhostname

Interface Implementation

The WCF LOB Adapter SDK defines a collection of classes and interfaces that must be implemented to support specific features of the adapter. The following table describes those classes and interfaces, their descriptions, and when to implement them.

Class/Interface | When to implement | Description
IConnection | If you need to define the connection to the target system. | Defines the connection to the target system.
IConnectionFactory | If you need to create a connection to the target system. | Creates the connection to the target system.
ConnectionUri | If you need to manage a connection Uri. If you need to categorize connection property within the Add Adapter Service Reference Plug-in tool. | Manages a connection Uri for the target system.
IMetadataResolverHandler | Your adapter must support metadata resolve capability. | Resolves operation and type metadata.
IMetadataSearchHandler | If your adapter supports metadata search capability. | Searches for the operations within the target system.
IMetadataBrowseHandler | Your adapter must support browse capability | Browses for the operations within the target system.
IOutboundHandler | If your adapter typically needs to support outbound capability. | Transforms the incoming WCF request message into a target system message, invokes target system specific function, and then transforms the response into an outgoing WCF response message.
IInboundHandler | If your adapter supports inbound capability. | Listens for data and/or events from the target system.

To simplify your adapter development, use the Adapter Development Wizard to generate your adapter project, which creates a set of derived classes tailored to your adapter features.

To customize the adapter and connection properties through the Add Adapter Service Reference Plug-in and Consume Adapter Service Add-in tools, modify the following files generated by Adapter Development Wizard.

  • {Projectname}BindingElement.cs

  • {Projectname}BindingElementExtensionElement.cs

  • {Projectname}ConnectionUri.cs

For details on how to do so, see Step 2: Categorize the Adapter and Connection Properties.

See Also

Concepts

WCF LOB Adapter SDK Tutorials

� 2014 Microsoft Corporation. All rights reserved.


Step 1: Use the WCF LOB Adapter Development Wizard to Create the Echo Adapter Project
Step 1 of 9

Time to complete: 15 minutes

In this step, you will create a project using Visual Studio and the Adapter Development Wizard. The Adapter Development Wizard will guide you through steps involved in developing a custom adapter for the system. It collects information about message exchange patterns, metadata features, adapter properties, and connection properties. Once the wizard successfully completes, it generates a set of files.

Prerequisites

You must possess the knowledge described in Before You Begin the Tutorials and have successfully set up your computer for your adapter development by using the WCF LOB Adapter SDK.

To choose WCF LOB Adapter Plug-in in Visual Studio

  1. Start Visual Studio and then on the File menu, point to New, and then click Project.

  2. In the New Project dialog box, do the following:

    Use this To do this

    Project types

    Click Visual C#.

    Templates

    Click WCF LOB Adapter.

    Name

    Type EchoAdapter.

    Location

    Type C:\Tutorials.

    Create directory for solution

    Select this check box to create a directory for the solution files.

    Solution Name

    Type EchoAdapterSampleV2.

    The following figure shows the New Project dialog box.

  3. Click OK.

  4. On the Welcome page, click Next. The following figure shows the Welcome page.

  5. Click Next.

To provide the scheme and namespace information

  1. On the Scheme, Namespace, and URI Information page, do the following:

    Use this To do this

    Scheme

    Type echov2.

    Project namespace

    Type Microsoft.Adapters.Samples.EchoV2.

    The following figure shows the Scheme, Namespace, and URI Information page.

  2. Click Next.

To specify the data flow and metadata features

  1. On the Data Flows and Metadata Features page, do the following:

    Message Exchange Patterns

    Use this To do this

    Synchronous outbound

    Select the check box.

    Synchronous inbound

    Select the check box.

    Metadata Features

    Use this To do this

    Retrieval

    Select the check box.

    Browse

    Select the check box.

    Search

    Select the check box.

    Note
    Data flows in this context means the same as message exchange patterns, the term used in the conceptual topics.

    The following figure shows the Data Flows and Metadata Features page.

  2. Click Next.

To specify adapter properties

  1. On the Adapter Properties page, do the following:

  2. Add a property called Count. This number is used by every operation of the echo adapter. Each operation will return the input value the Count number of times.

    Use this To do this

    Property name

    Type Count.

    Data type

    Select System.Int32.

    Default value

    Type 5.

    Add

    Click to add the new adapter property.

  3. Add a property called EnableConnectionPooling. This flag is used by the WCF LOB Adapter SDK to enable or disable the runtime connection pooling.

    Use this To do this

    Property name

    Type EnableConnectionPooling.

    Data type

    Select System.Boolean.

    Default value

    Type true.

    Add

    Click to add the new adapter property.

  4. Add a property called InboundFileFilter. This property is used by the FileSystemWatcher to monitor files of this extension. This property is applicable for the inbound scenario only.

    Use this To do this

    Property name

    Type InboundFileFilter.

    Data type

    Select System.String.

    Default value

    Type *.txt.

    Add

    Click to add the new adapter property.

  5. Add a property called InboundFileSystemWatcherFolder. This property is used to set the folder where the files will be dropped for FileSystemWatcher to raise notification to the adapter. This property is applicable for the inbound scenario only.

    Use this To do this

    Property name

    Type InboundFileSystemWatcherFolder.

    Data type

    Select System.String.

    Default value

    Type C:\\inbound\\watcher.

    Add

    Click to add the new adapter property.

    The following figure shows the Adapter Properties page.

  6. Click Next.

To specify the connection properties

  1. On the Connection Properties page, do the following:

  2. Add a property called Application. This property is for illustrative purpose only. The echo adapter does not involve any LOB system.

    Use this To do this

    Property name

    Type Application.

    Data type

    Select System.String.

    Default value

    Type lobapplication.

    Add

    Click to add the new adapter property.

  3. Add a property called EnableAuthentication. When true, the adapter expects a value in the username field within the client credentials.

    Use this To do this

    Property name

    Type EnableAuthentication.

    Data type

    Select System.Boolean.

    Default value

    Type false.

    Add

    Click to add the new adapter property.

  4. Add a property called HostName. This property is for illustrative purpose only, similar to property Application.

    Use this To do this

    Property name

    Type Hostname.

    Data type

    Select System.String.

    Default value

    Type lobhostname.

    Add

    Click to add the new adapter property.

  5. Add a property called EchoInUpperCase. This property controls whether some operations convert echoed strings to upper case or leave them in their original format.

    Use this To do this

    Property name

    Type EchoInUpperCase.

    Data type

    Select System.Boolean.

    Default value

    Type False.

    Add

    Click to add the new adapter property.

  6. Click Next.

To end the wizard

  1. On the Summary page, click Finish. The following figure shows Solution Explorer with the EchoAdapter project.

    Your project should contain the same files. If it does not, exit Visual Studio, delete the EchoAdapterSampleV2 folder, and then restart this step of the tutorial.

  2. In Visual Studio, on the File menu, click Save All.

    Note
    You saved your work. You can safely close Visual Studio at this time or go to the next step, Step 2: Categorize the Adapter and Connection Properties.

What Did I Just Do?

In this step, you created the echo adapter solution by using Visual Studio and the Adapter Development Wizard. The following table contains the set of files and what each file is for.

File Name Description

EchoAdapter.cs

This is the main adapter class which inherits from Adapter

No changes are necessary for the echo adapter.

EchoAdapterBinding.cs

This is the class used while creating a binding for an adapter.

No changes are necessary for the echo adapter.

EchoAdapterBindingCollectionElement.cs

This is the Binding Collection Element class which implements the StandardBindingCollectionElement

No changes are necessary for the echo adapter.

EchoAdapterBindingElement.cs

This provides a base class for the configuration elements.

To categorize the adapter and connection properties of the echo adapter, follow Step 2: Categorize the Adapter and Connection Properties.

EchoAdapterBindingElementExtensionElement.cs

This class is provided to represent the adapter as a binding element, so that it can be used within a user-defined WCF custom binding.

To categorize the adapter and connection properties of the echo adapter, follow Step 2: Categorize the Adapter and Connection Properties.

EchoAdapterHandlerBase.cs

This is the base class for handlers used to store common properties/helper functions exposed by your base class.

To categorize the adapter and connection properties of the echo adapter, follow Step 2: Categorize the Adapter and Connection Properties.

EchoAdapterConnection.cs

This defines the connection to the target system.

To support the echo adapter's connection to the target system, follow Step 3: Implement the Connection for the Echo Adapter.

EchoAdapterConnectionFactory.cs

This defines the connection factory for the target system.

To support the echo adapter's connection to the target system, follow Step 3: Implement the Connection for the Echo Adapter.

EchoAdapterConnectionUri.cs

This is the class for representing an adapter connection Uri.

To support the echo adapter's connection to the target system, follow Step 3: Implement the Connection for the Echo Adapter.

EchoAdapterMetadataBrowseHandler.cs

This class is used while performing a connection-based browse for metadata from the target system.

To support the metadata browsing capability for the echo adapter, follow Step 4: Implement the Metadata Browse Handler for the Echo Adapter.

EchoAdapterMetadataSearchHandler.cs

This class is used for performing a connection-based search for metadata from the target system.

To support the metadata searching capability for the echo adapter, follow Step 5: Implement the Metadata Search Handler for the Echo Adapter.

EchoAdapterMetadataResolve.cs

This class is used for performing a connection-based retrieval of metadata from the target system.

To support the metadata resolving capability for the echo adapter, follow Step 6: Implement the Metadata Resolve Handler for the Echo Adapter.

EchoAdapterOutboundHandler.cs

This class is used for sending data to the target system.

To support the outbound message exchange for the echo adapter, follow Step 7: Implement the Synchronous Outbound Handler for the Echo Adapter.

EchoAdapterInboundHandler.cs

This class implements an interface for listening or polling for data.

To support the inbound message exchange for the echo adapter, follow Step 8: Implement the Synchronous Inbound Handler for the Echo Adapter.

EchoAdapterTrace.cs

This class implements adapter tracing, for debugging and troubleshooting.

Next Steps

You will categorize adapter and connection properties for their UI logical grouping, and then implement connection, metadata browsing, searching, and resolving capabilities, and the outbound and inbound message exchanges. Lastly, you will build and deploy the echo adapter.

See Also

Tasks

Step 2: Categorize the Adapter and Connection Properties

Concepts

Tutorial 1: Develop the Echo Adapter

� 2014 Microsoft Corporation. All rights reserved.


Step 2: Categorize the Adapter and Connection Properties
Step 2 of 9

Time to complete: 30 minutes

In this step, you will update the EchoAdapterBindingElement and EchoAdapterBindingElementExtensionElement classes to assign a category to your adapter and connection properties. By doing so, properties are logically grouped by category in the Add Adapter Service Reference Plug-in and Consume Adapter Service Add-in tools. For example, if you want the Application, EnableAuthentication, and Hostname properties to appear under the Connection category as shown below, you will need to assign the Connection category to each of the Application, EnableAuthentication, and Hostname properties.

Similarly, if you want the InboundFileFilter and InboundFleSystemWatcherFolder properties to appear under the Inbound category as shown below, you will need to assign the Inbound category to each. If you want Count and EnableConnectionPooling to appear under the Misc category, you will need to assign the Misc category to each.

Keep in mind that you can assign a property with any category name you choose. In this example, since the EnableConnnectionPooling property does not belong to any other categories, we categorize it as Misc (Miscellaneous). As to the InboundFileFilter property, since it is used during the inbound handling within the example, it is more appropriate to assign Inbound to the property, rather than Miscellaneous. Here is the complete custom property categorization for the echo adapter.

Property | Category
InboundFileFilter | Inbound
InboundFileSystemWatcherFolder | Inbound
Count | Misc
EnableConnectionPooling | Misc
Application | Connection
EnableAuthentication | Connection
Hostname | Connection
EchoInUpperCase | Format

In addition to those changes, you will also modify the Dispose method of EchoAdapterHandlerBase.

For the adapter properties exposed by the echo adapter, see the adapter properties section of the Tutorial 1: Develop the Echo Adapter.

Prerequisites

Before you begin this step, you must complete Step 1: Use the WCF LOB Adapter Development Wizard to Create the Echo Adapter Project. You should also be familiar with the BindingElementExtensionElement and StandardBindingElement classes.

To update the EchoAdapterHandlerBase Dispose method

  1. In Solution Explorer, double-click the EchoAdapterHandlerBase.cs file.

  2. Remove the following statement from the Dispose method:

    C# Copy Code
    throw new NotImplementedException("The method or operation is not implemented.");

    The revised method should look similar to the following:

    C# Copy Code
    protected virtual void Dispose(bool disposing)
{
   //
   //TODO: Implement Dispose. Override this method in respective Handler classes
   //
}

To update the Adapter properties class

  1. In Solution Explorer, double-click the EchoAdapterBindingElement.cs file.

  2. In the Visual Studio editor, expand the Custom Generated Properties region.

  3. To assign the Misc category to the Count property, add the following single statement to the beginning of the Count implementation.

    C# Copy Code
    [System.ComponentModel.Category("")]

    The Count implementation should now match the following:

    C# Copy Code
    [System.ComponentModel.Category("")]
[System.Configuration.ConfigurationProperty("count", DefaultValue = 5)]
public int Count
{
    get
    {
        return ((int)(base["Count"]));
    }
    set
    {
        base["Count"] = value;
    }
}

  4. To assign the Misc category to the EnableConnectionPooling property, add the following single statement to the beginning of the EnableConnectionPooling implementation.

    C# Copy Code
    [System.ComponentModel.Category("")]

  5. To assign the Inbound category to the InboundFileFilter property, add the following single statement to the beginning of the InboundFileFilter implementation.

    C# Copy Code
    [System.ComponentModel.Category("Inbound")]

  6. To assign the Inbound categoryto inboundFleSystemWatcherFolder property, add the following single statement to the beginning of the inboundFleSystemWatcherFolder implementation.

    C# Copy Code
    [System.ComponentModel.Category("Inbound")]

  7. Check to ensure that the code in the Custom Generated Properties region matches the following:

    C# Copy Code
    [System.ComponentModel.Category("")]
[System.Configuration.ConfigurationProperty("count", DefaultValue = 5)]
public int Count
{
    get
    {
        return ((int)(base["Count"]));
    }
    set
    {
        base["Count"] = value;
    }
}

[System.ComponentModel.Category("")]
[System.Configuration.ConfigurationProperty("enableConnectionPooling", DefaultValue = true)]
public bool EnableConnectionPooling
{
    get
    {
        return ((bool)(base["EnableConnectionPooling"]));
    }
    set
    {
        base["EnableConnectionPooling"] = value;
    }
}

[System.ComponentModel.Category("Inbound")]
[System.Configuration.ConfigurationProperty("inboundFileFilter", DefaultValue = "*.txt")]
public string InboundFileFilter
{
    get
    {
        return ((string)(base["InboundFileFilter"]));
    }
    set
    {
        base["InboundFileFilter"] = value;
    }
}

[System.ComponentModel.Category("Inbound")]
[System.Configuration.ConfigurationProperty("inboundFileSystemWatcherFolder", DefaultValue = "{InboundFileSystemWatcherFolder}")]
public string InboundFileSystemWatcherFolder
{
    get
    {
        return ((string)(base["InboundFileSystemWatcherFolder"]));
    }
    set
    {
        base["InboundFileSystemWatcherFolder"] = value;
    }
}

#endregion Custom Generated Properties

To update the Connection Properties

  1. In Solution Explorer, double-click the EchoAdapterConnectionUri.cs file.

  2. In the Visual Studio editor, expand the Custom Generated Properties region.

  3. To assign the Format category to the EchoInUpperCase property, add the following single statement to the beginning of the EchoInUpperCase implementation.

    C# Copy Code
    [System.ComponentModel.Category("Format")]

  4. To assign the Connection category to the Hostname property, add the following single statement to the beginning of the Hostname implementation.

    C# Copy Code
    [System.ComponentModel.Category("Connection")]

  5. To assign the Connection category to the Application property, add the following single statement to the beginning of the Application implementation.

    C# Copy Code
    [System.ComponentModel.Category("Connection")]

  6. To assign the Connection categoryto EnableAuthentication property, add the following single statement to the beginning of the EnableAuthentication implementation.

    C# Copy Code
    [System.ComponentModel.Category("Connection")]

  7. Check to ensure that the code in the Custom Generated Properties region matches the following:

    C# Copy Code
    #region Custom Generated Properties
        [System.ComponentModel.Category("Format")]
        public bool EchoInUpperCase
        {
            get
            {
                return this.echoInUpperCase;
            }
            set
            {
                this.echoInUpperCase = value;
            }
        }

        [System.ComponentModel.Category("Connection")]
        public string Hostname
        {
            get
            {
                return this.hostname;
            }
            set
            {
                this.hostname = value;
            }
        }

        [System.ComponentModel.Category("Connection")]
        public string Application
        {
            get
            {
                return this.application;
            }
            set
            {
                this.application = value;
            }
        }

        [System.ComponentModel.Category("Connection")]
        public bool EnableAuthentication
        {
            get
            {
                return this.enableAuthentication;
            }
            set
            {
                this.enableAuthentication = value;
            }
        }
        #endregion Custom Generated Properties

  8. In Visual Studio, from the File menu, click Save All.

Note
You saved your work. You can safely close Visual Studio at this time or go to the next step, Step 3: Implement the Connection for the Echo Adapter.

What Did I Just Do?

You just updated classes to assign a category to each adapter and connection property exposed by the echo adapter.

Next Steps

You will implement connection, metadata browsing, searching, and resolving capabilities, and the outbound message exchange. Lastly, you will build and deploy the echo adapter.

See Also

Tasks

Step 3: Implement the Connection for the Echo Adapter

Concepts

Tutorial 1: Develop the Echo Adapter

� 2014 Microsoft Corporation. All rights reserved.


Step 3: Implement the Connection for the Echo Adapter
Step 3 of 9

Time to complete: 45 minutes

In this step, you will implement the connection capability of the Echo adapter. According to the WCF LOB Adapter SDK, you must implement the following abstract class and interfaces when connecting to the target system.

  • ConnectionUri

  • IConnection

  • IConnectionFactory

Instead of deriving from the above abstract class and interfaces, the Adapter Development Wizard automatically generates the three derived classes, EchoAdapterConnection, EchoAdapterConnectionUri, and EchoAdapterConnectionFactory. In addition to creating the classes, each will have by default a method that throws a specific exception, NotImplementedException. This statement reminds the developer to implement each class. When the class is implemented, this exception-throwing statement must be removed.

In the following section, you will update those three classes to get a better understanding of how to handle a connection, what the URI structure is, and how to programmatically retrieve various URI elements and then use those elements within the adapter.

Prerequisites

Before you begin this step, you must have successfully completed Step 2: Categorize the Adapter and Connection Properties. And you should have a clear understanding of the IConnection, IConnectionFactory, and ConnectionUri classes.

Connection-Related Classes

The Adapter Development Wizard generates three derived classes, EchoAdapterConnection, EchoAdapterConnectionUri, and EchoAdapterConnectionFactory. The following provides a brief overview of methods associated with each.

EchoAdapterConnection

Depending on your adapter complexity, you might need to implement all of the following five methods. For Echo adapter, most are not supported, because the Echo adapter sample does not involve any target system.

Method | Description
public void Close(TimeSpan timeout) | Closes the connection to the target system. The Echo adapter uses this method to only add trace events to the trace listener.
public bool IsValid(TimeSpan timeout) | Returns a value indicating whether the connection is still valid. Not supported by the Echo adapter.
public void Open(TimeSpan timeout) | Opens the connection to the target system. N/A for the Echo adapter. However, the example shows you how to use a URI element called enableAuthentication to require users to provide a user name.
public void ClearContext() | Clears the context of the connection. This method is called when the connection is set back to the connection pool. Not supported by the Echo adapter.
public void Abort() | Aborts the connection to the target system. Not supported by the Echo adapter.

EchoAdapterConnectionFactory

The connection factory is responsible for creating the connection. By default, you must modify this class only when connecting to a target system. Although the Echo adapter does not involve any target system, it shows you how to use a custom URI element called enableAuthentication if your connection requires user authentication.

Note
The enableAuthentication is not a keyword, it is just a variable name. Hence, you can choose any name for it.

EchoAdapterConnectionUri

This represents a connection string to the target system.

Method | Description
public override Uri Uri | Gets and sets the Uri. Gets to build the Uri string and sets to parse the Uri string.
public EchoAdapterConnectionUri() | Initializes a new instance of the ConnectionUri class.
public override string SampleUriString | Returns EchoAdapter.SCHEME + "://{hostname}/{application}?enableAuthentication={True|False}". This return string will display as the Example in the Add Adapter Service Reference Plug-in tool, as shown in the following figure.

Echo Adapter Connection URI

The sample Echo adapter connection URI is described as: EchoAapter.SCHEME://{hostname}/{application}?enableAuthentication={true|false}

Since the EchoAapter.SCHEME is echov2, the connection URI is:

echo2://lobhostname/lobapplication?enableAuthentication={true|false}

You can read the previous connection URI when enableAuthentication=false as follows:

Using the echov2 transport schema, go to a computer named lobhostname, where an application named lobapplication that does not require any authentication is waiting for your connection.

Or, when enableAuthentication=true, read the connection as follows:

Using the echov2 transport schema, go to a computer named lobhostname, where an application named lobapplication expects that authentication is waiting for your connection. For the Echo adapter, only a user name is required.

With a defined URI, you can programmatically consume and parse it for connectivity and configuration. If the connection requires sensitive data such as a user name and password, do not contain such information in the URI. Instead, add such information in the ClientCredentials object. The code example that you will add will show you how to do so.

In the following code, the Echo adapter constructs the URI in two ways to show you how the adapter can use various URI elements to modify the adapter feature.

echo2://lobhostname/lobapplication?enableAuthentication=[true|false]

echo2://lobhostname/lobapplication?enableAuthentication=[true|false]&echoInUpperCase=true

Retrieving the URI Element

You can parse each URI element in the Echo adapter URI echo2://lobhostname/lobapplication?enableAuthentication=false&echoInUpperCase=false. The URI element values and associated methods are listed in the following table:

URI Element Value Method

lobhostname

Host to retrieve the host name

Lobapplication

AbsolutePath to retrieve the target application name

enableAuthentation=false

GetQueryStringValue("enableAuthentication")

Use this URI element to validate user credentials

Note
GetQueryStringValue is a static method defined in the ConnectionUri

echoInUpperValue=false

GetQueryStringValue("echoInUpperValue")

Use this URI element to convert the incoming string to upper case.

EnableAuthentication URI Element

Your target system often requires you to provide client credentials to establish a connection to the target system. As mentioned, the Echo adapter does not involve any target system. Though as a sample, it shows how to use a custom URI element called enableAuthentication to provide the credentials.

Copy Code
 public class EchoAdapterConnection : IConnection
{
….
   public void Open(TimeSpan timeout)
  {
    // only validate the credentials if EnableAuthentication
    // connection property value is true
    if (this.ConnectionFactory.ConnectionUri.EnableAuthentication)
    {
        // this adapter expects a value in username
        if (this.connectionFactory.ClientCredentials != null &&
            string.IsNullOrEmpty(this.connectionFactory.ClientCredentials.UserName.UserName))
        {
            throw new CredentialsException("Username is expected.");
        }
  }
}

The code checks to see if enableAuthentication is true and if a user name is not provided; if a user name is not provided, it throws an exception, which will be caught by the Add Adapter Service Reference Plug-in tool, as shown below:

To provide the user name, you can enter it in the Configure Adapter dialog box in the Add Adapter Service Reference Plug-in tool, as shown in the following figure:

EchoInUpperCase URI Element

The EchoInUpperCase URI element can be referenced like a Boolean flag. If the flag is true, then the adapter converts the input string of the EchoStrings operation to uppercase.

To change the default value of the echoInUpperCase URI element, use the URI Properties tab of the Configure Adapter in the Add Adapter Service Reference Plug-in, as shown below.

Updating EchoAdapterConnection

You will implement the IsValid, Open, and Close method of the EchoAdapterConnection class.

To update the EchoAdapterConnection class

  1. In Solution Explorer, double-click the EchoAdapterConnection.cs file.

  2. In the Visual Studio editor, right-click anywhere within the editor, in the context menu, point to Outlining, and then click Stop Outlining.

  3. In the Visual Studio editor, find the IsValid method. Inside the IsValid method, replace the existing implementation with the one below:

    C# Copy Code
        return true;

  4. In the Visual Studio editor, find the Open method. Inside the Open method, replace the existing implementation with the following implementation. This shows you how to use the URI enableAuthentication element to ensure user name is provided:

    C# Copy Code
        // only validate the credentials if EnableAuthentication
    // connection property value is true
    if (this.ConnectionFactory.ConnectionUri.EnableAuthentication)
    {
        // this adapter expects a value in username
        // it will just log the credentials in the trace file
        if (this.connectionFactory.ClientCredentials != null &&
            string.IsNullOrEmpty(this.connectionFactory.ClientCredentials.UserName.UserName))
        {
            throw new CredentialsException("Username is expected.");
        }
        // got the username, log it in trace file
        EchoAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Information, "EchoAdapterConnection::Open", "Username is " + this.connectionFactory.ClientCredentials.UserName.UserName);
    }
    EchoAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Information, "EchoAdapterConnection::Open", "Connection successfully established!");

  5. In the Visual Studio editor, find the Close method. Inside the Close method, add the following single statement:

    C# Copy Code
         EchoAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Information, "EchoAdapterConnection::Close", "Connection successfully closed!");

Updating the EchoAdapterConnectionFactory

You will implement EchoAdapterConnectionFactory constructor, and add two properties called ClientCredentials and ConnectionUri.

To update the EchoAdapterConnectionFactory class

  1. In Solution Explorer, double-click the EchoAdapterConnectionFactory.cs file.

  2. In the Visual Studio editor, right-click anywhere within the editor, in the context menu, point to Outlining, and then click Stop Outlining.

  3. In the Visual Studio editor, find the Private Fields region. Add the following single statement:

    C# Copy Code
    private EchoAdapterConnectionUri connectionUri;

    Your list of private fields should match the following:

    C# Copy Code
    // Stores the client credentials
private ClientCredentials clientCredentials;
// Stores the adapter class
private EchoAdapter adapter;
private EchoAdapterConnectionUri connectionUri;

  4. In the Visual Studio editor, find the EchoAdapterConnectionFactory method. Inside the EchoAdapterConnectionFactory constructor method, before "}", add the following single statement as the last statement.

    C# Copy Code
    this.connectionUri = connectionUri as EchoAdapterConnectionUri;

    The implementation of the EchoAdapterConnectionFactory method should match the following:

    C# Copy Code
    /// <summary>
/// Initializes a new instance of the EchoAdapterConnectionFactory class
/// </summary>
public EchoAdapterConnectionFactory(ConnectionUri connectionUri
    , ClientCredentials clientCredentials
    , EchoAdapter adapter)
{
    this.clientCredentials = clientCredentials;
    this.adapter = adapter;
    //added
    this.connectionUri = connectionUri as EchoAdapterConnectionUri;
}

  5. In the Visual Studio editor, find the Public Properties region. Add the following code:

    C# Copy Code
    /// <summary>
/// Returns the client credentials
/// </summary>
public ClientCredentials ClientCredentials
{
    get
    {
        return this.clientCredentials;
    }
}

/// <summary>
/// Returns the Connection Uri for this adapter
/// </summary>
public EchoAdapterConnectionUri ConnectionUri
{
    get
    {
        return this.connectionUri;
    }
}

Updating the EchoAdapterConnectionUri

You will implement the EchoAdapterConnectionUri default constructor, EchoAdapterConnectionUri(Uri uri) overloaded constructor, and the public override Uri Uri property.

To update the EchoAdapterConnectionUri class

  1. In Solution Explorer, double-click the EchoAdapterConnectionUri.cs file.

  2. In the Visual Studio editor, right-click anywhere within the editor, in the context menu, point to Outlining, and then click Stop Outlining.

  3. In the Visual Studio editor, find the Constructors region. Inside the EchoAdapterConnectionUri() default constructor, add the following statement:

    C# Copy Code
                Uri = new Uri("echov2://lobhostname/lobapplication?enableauthentication=False");

  4. In the Visual Studio editor, inside the EchoAdapterConnectionUri(Uri uri) overloaded constructor, and add the following statement:

    C# Copy Code
                Uri = uri;

    Your implementation of the EchoAdapterConnectionUri(Uri uri) method should match the following:

    C# Copy Code
            public EchoAdapterConnectionUri(Uri uri)
            : base()
        {
            Uri = uri;
        }

  5. In the Visual Studio editor, inside the public override Uri Uri method, replace the existing with the following logic. The get builds the Uri with echoInUpperCase or without it. The set parses the URI to retrieve host name, database name, and query values.

    C# Copy Code
        get
    {
        // Build the uri
        if (String.IsNullOrEmpty(this.hostname)) throw new InvalidUriException("Invalid target system host name.");
        if (String.IsNullOrEmpty(this.application)) throw new InvalidUriException("Invalid target system data source name.");
        if (EchoInUpperCase)
        {
            // build the uri with echoInUpperCase= query string
            return new Uri(EchoAdapter.SCHEME + "://" + Hostname + "/" + Application + "?" + "enableAuthentication=" + EnableAuthentication + "&" + "echoInUpperCase=" + echoInUpperCase);
        }
        else
        {
            // build the uri without echoInUpperCase= query string
            return new Uri(EchoAdapter.SCHEME + "://" + Hostname + "/" + Application + "?" + "enableAuthentication=" + EnableAuthentication);
        }
    }
    set
    {
        // Parse the uri
        String[] enableAuthValue = GetQueryStringValue(value, "enableAuthentication");
        if (enableAuthValue.Length > 0) this.enableAuthentication = Boolean.Parse(enableAuthValue[0]);
        String[] echoInUpperValue = GetQueryStringValue(value, "echoInUpperCase");
        if (echoInUpperValue.Length > 0) this.echoInUpperCase = Boolean.Parse(echoInUpperValue[0]);

        this.hostname = value.Host;
        String[] applicationValue = value.AbsolutePath.Split('/');
        if (applicationValue.Length > 1) this.Application = applicationValue[1];
    }

  6. In Visual Studio, on the File menu, click Save All.

  7. On the Build menu, click Build Solution. You should successfully compile the project. If not, ensure that you have followed every step above.

Note
You saved your work. You can safely close Visual Studio at this time or go to the next step, Step 4: Implement the Metadata Browse Handler for the Echo Adapter.

What Did I Just Do?

You implemented the connection for the Echo adapter. You learned the connection components of the WCF LOB Adapter SDK, the basic structure of the connection URI, how to programmatically parse the URI elements, and how you can use the URI element to change the adapter feature.

Next Steps

You will implement metadata browsing, searching, and resolving capabilities, and the outbound message exchange. Finally, you will build and deploy the adapter.

See Also

Tasks

Step 4: Implement the Metadata Browse Handler for the Echo Adapter

Concepts

Tutorial 1: Develop the Echo Adapter

� 2014 Microsoft Corporation. All rights reserved.


Step 4: Implement the Metadata Browse Handler for the Echo Adapter
Step 4 of 9

Time to complete: 45 minutes

In this step, you will implement the browse capability of the Echo adapter. This capability will allow your adapter to perform a connection-based browse to obtain metadata from the target system. Regardless of your adapter's capabilities, your adapter must support the browse capability.

According to the WCF LOB Adapter SDK, to support browse capability, you must implement the IMetadataBrowseHandler interface. For the Echo adapter, the Adapter Development Wizard automatically generates the derived class called EchoAdapterMetadataBrowseHandler.

In the following steps, you will update this class to get a better understanding of how to implement the Browse method, how to set various properties of the MetadataRetrievalNode object, and how the operation and category nodes supported by the adapter appear in the Add Adapter Service Reference Plug-in tool.

Prerequisites

Before you begin this step, you must have successfully completed Step 3: Implement the Connection for the Echo Adapter. You must also understand the following classes:

  • MetadataRetrievalNode

  • MetadataRetrievalNodeDirections

  • IMetadataBrowseHandler

The IMetadataBrowseHandler Interface

The IMetadataBrowseHandler interface is defined as:

Copy Code
    public interface IMetadataBrowseHandler : IConnectionHandler, IDisposable
    {
        MetadataRetrievalNode[] Browse(string nodeId, int childStartIndex, int maxChildNodes, TimeSpan timeout);
    }

The Browse method returns an array of MetadataRetrievalNode objects based on the method parameters. The parameter definitions for the Browse method are described in the following table.

Note
The Echo adapter implementation uses only the node ID and ignores the other three parameters, since the Echo adapter supports only a few nodes.

Parameter Definition

nodeId

Each item in the hierarchy of the metadata explorer (the Add Adapter Service Reference Plug-in and

Consume Adapter Service Add-in) has a nodeId. Each node ID must be unique and can be a category or an operation. The category can have subcategories.

Note
If null or an empty string (""), operations will be retrieved from the root node ("/") by default.

childStartIndex

The index of the first child to return.

Not supported by the Echo adapter.

maxChildNodes

The maximum number of result nodes to return. Use Int32.Max to retrieve all result nodes.

Not supported by the Echo adapter.

timeout

The maximum time allowed for the operation to complete.

Not supported by the Echo adapter.

When implementing the Browse method, you must add every category and operation node to the array of MetadataRetrievalNode objects. To specify a node as category, set the IsOperation to false. To specify a node as operation, set the IsOperation to true.

Echo Adapter Metadata Browse

Depending on your target system's categories and operations, there are many ways to build an array of MetadataRetrievalNode objects. The operations and categories you choose should represent the operations you want to expose. But for the Echo adapter, it simply creates a MetadataRetrievalNode object for each of the following nodes with node ID listed:

Copy Code
EchoMainCategory  (node under the root node)
        Echo/EchoStrings   (outbound operation)
        Echo/EchoGreetings(outbound operation)
        Echo/EchoCustomGreetingFromFile(outbound operation)
        Echo/OnReceiveEcho (inbound operation)

The EchoMainCategory is the category node under the root node ("/"). This node is also used as the category for both inbound and outbound operations. Hence, when creating the MetadataRetrievalNode object for that category, you can do the following:

Copy Code
    MetadataRetrievalNode node = new MetadataRetrievalNode("EchoMainCategory");
    node.IsOperation = false; //category
    node.Direction = MetadataRetrievalNodeDirections.Inbound | MetadataRetrievalNodeDirections.Outbound  //for both inbound and outbound

For an outbound operation such as Echo/EchoString that belongs to the EchoMainCategory, you can do the following:

Copy Code
      if( "EchoMainCategory".CompareTo(nodeId) == 0 ) //category is EchoMainCategory
            {
                // Outbound operations
                MetadataRetrievalNode outOpNode1 = new MetadataRetrievalNode("Echo/EchoStrings");
                outOpNode1.DisplayName = "EchoStrings";
                outOpNode1.Description = "This operation echoes the incoming string COUNT number of times in a string array.";
                outOpNode1.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode1.IsOperation = true;

For an inbound operation such as Echo/OnReceiveEcho that belongs to the EchoMainCategory, you can do the following:

Copy Code
      if( "EchoMainCategory".CompareTo(nodeId) == 0 ) //category is EchoMainCategory
            {
    // Inbound operations
                MetadataRetrievalNode inOpNode1 = new MetadataRetrievalNode("Echo/OnReceiveEcho");
                inOpNode1.DisplayName = "OnReceiveEcho";
                inOpNode1.Description = "This operation echoes the location and length of a file dropped in the specified file system.";
                inOpNode1.Direction = MetadataRetrievalNodeDirections.Inbound;
                inOpNode1.IsOperation = true;

When the Add Adapter Service Reference Plug-in and Consume Adapter Service Add-in tools explore the Echo adapter metadata, by default, it starts from the root node ("/").

The following figure shows that the EchoMainCategory node appears under the root node ("/"):

To browse the three outbound operations, in the Add Adapter Service Reference Plug-in tool, in the Select contract type drop-down list,select the Client (Outbound operations) option. You will see those operations in the Available categories and operations list box, as shown below:

In the previous figure, notice that the DisplayName value appears in the Name column of the Available categories and operations list box. The parameter passed into the MetadataRetrievalNode constructor appears in the Node ID column of the Available categories and operations list box, and the Description value appears as the tool tip that contains the description, when you right-click the DisplayName.

To see the inbound operations, in the Add Adapter Service Reference Plug-in tool, in the Select contract type drop-down list,select the Service (Inbound operations) option. You will see the inbound OnReceiveEcho operation in the Available categories and operations list box, as shown in the following figure:

Implementing the IMetadataBrowseHandler

In this step, you will update the EchoAdapterMetadataBrowseHandler class to implement the Echo adapter's metadata browse, that is, to implement the Browse method of the IMetadataBrowseHandler interface. Specifically, you will create a MetadataRetrievalNode object for each category and operation, set appropriate values for that object, and then return the array of MetadataRetrievalNode objects for category and operations. Keep in mind that when you create a MetadataRetrievalNode object, you need to pass in the node ID, not the display name.

To update the EchoAdapterMetadataBrowseHandler class

  1. In Solution Explorer, double-click the EchoAdapterMetadataBrowseHandler.cs file.

  2. In the Visual Studio editor, right-click anywhere within the editor, in the context menu, point to Outlining, and then click Stop Outlining.

  3. In the Visual Studio editor, inside the Browse method, replace the existing logic with the following to create a MetadataRetrievalNode object for EchoMainCategory.

    C# Copy Code
        if (MetadataRetrievalNode.Root.NodeId.Equals(nodeId))
    {
        MetadataRetrievalNode node = new MetadataRetrievalNode("EchoMainCategory");
        node.DisplayName = "Main Category";
        node.IsOperation = false;
        node.Description = "This category contains inbound and outbound categories.";
        node.Direction = MetadataRetrievalNodeDirections.Inbound | MetadataRetrievalNodeDirections.Outbound;
        return new MetadataRetrievalNode[] { node };
    }

  4. Continue adding the following logic to create a MetadataRetrievalNode object for Echo/OnReceiveEcho.

    C# Copy Code
        if( "EchoMainCategory".CompareTo(nodeId) == 0 )
    {
        // Inbound operations
        MetadataRetrievalNode inOpNode1 = new MetadataRetrievalNode("Echo/OnReceiveEcho");
        inOpNode1.DisplayName = "OnReceiveEcho";
        inOpNode1.Description = "This operation echos the location and length of a file dropped in the specified file system.";
        inOpNode1.Direction = MetadataRetrievalNodeDirections.Inbound;
        inOpNode1.IsOperation = true;

  5. Continue adding the following logic to create a MetadataRetrievalNode object for Echo/EchoStrings.

    C# Copy Code
            // Outbound operations
        MetadataRetrievalNode outOpNode1 = new MetadataRetrievalNode("Echo/EchoStrings");
        outOpNode1.DisplayName = "EchoStrings";
        outOpNode1.Description = "This operation echoes the incoming string COUNT number of times in a string array.";
        outOpNode1.Direction = MetadataRetrievalNodeDirections.Outbound;
        outOpNode1.IsOperation = true;

  6. Continue adding the following code to create a MetadataRetrievalNode object for Echo/EchoGreetings.

    C# Copy Code
            MetadataRetrievalNode outOpNode2 = new MetadataRetrievalNode("Echo/EchoGreetings");
        outOpNode2.DisplayName = "EchoGreetings";
        outOpNode2.Description = "This operation echoes the incoming Greeting object COUNT number of times in an array of type Greeting.";
        outOpNode2.Direction = MetadataRetrievalNodeDirections.Outbound;
        outOpNode2.IsOperation = true;

  7. Continue adding the following code to create a MetadataRetrievalNode object for Echo/ EchoGreetingFromFile.

    C# Copy Code
            MetadataRetrievalNode outOpNode3 = new MetadataRetrievalNode("Echo/EchoCustomGreetingFromFile");
        outOpNode3.DisplayName = "EchoCustomGreetingFromFile";
        outOpNode3.Description = "This operation echoes the greeting object by reading its instance from a file. The Greeting object's metadata is obtained from a predefined XSD file.";
        outOpNode3.Direction = MetadataRetrievalNodeDirections.Outbound;
        outOpNode3.IsOperation = true;

  8. Continue adding the following code to return an array of MetadataRetrievalNode objects or null if not matched.

    Copy Code
            return new MetadataRetrievalNode[] { inOpNode1, outOpNode1, outOpNode2, outOpNode3 };
    }
    return null;

  9. In Visual Studio, on the File menu, click Save All.

  10. On the Build menu, click Build Solution. You should successfully build the project. If not, ensure that you have followed every step above.

Note
You saved your work. You can safely close Visual Studio at this time or go to the next step, Step 5: Implement the Metadata Search Handler for the Echo Adapter.

What Did I Just Do?

You just implemented the metadata browsing capability of the Echo adapter, by implementing the Browse method of the IMetadataBrowseHandler interface. Specifically, you created a MetadataRetrievalNode object for the category, and then returned it as an array of the MetadataRetrievalNode objects. For each operation, you created a MetadataRetrievalNode object, and then returned all those objects in an array of MetadataRetrievalNode.

Next Steps

You will implement metadata searching and resolving capabilities, and the outbound message exchange. Finally, you will build and deploy the Echo adapter.

See Also

Tasks

Step 3: Implement the Connection for the Echo Adapter
Step 5: Implement the Metadata Search Handler for the Echo Adapter

Concepts

Tutorial 1: Develop the Echo Adapter

� 2014 Microsoft Corporation. All rights reserved.


Step 5: Implement the Metadata Search Handler for the Echo Adapter
Step 5 of 9

Time to complete: 30 minutes

In this step of the tutorial, you will implement the search capability of the Echo adapter. Unlike browse, search is optional. According to the WCF LOB Adapter SDK, to support search capability, you must implement the IMetadataSearchHandler interface. For the Echo adapter, the Adapter Development Wizard automatically generates one derived class called EchoAdapterMetadataSearchHandler.

You will first update the EchoAdapterMetadataSearchHandler class to get a better understanding of how to implement this interface, how to populate MetadataRetrievalNode object, and how the search results appear in the Add Adapter Service Reference Plug-in tool.

Prerequisites

Before you begin this step, you must have successfully completed Step 4: Implement the Metadata Browse Handler for the Echo Adapter. You must also have a clear understanding about the following classes:

  • MetadataRetrievalNode

  • IMetadataSearchHandler

  • MetadataRetrievalNodeDirections

The IMetadataSearchHandler Interface

The IMetadataSearchHandler is defined as:

Copy Code
    public interface IMetadataSearchHandler : IConnectionHandler, IDisposable
    {
        MetadataRetrievalNode[] Search(string nodeId, string searchCriteria, int maxChildNodes, TimeSpan timeout);
    }

The Search method returns an array of MetadataRetrievalNode objects based on the search criteria. The parameter definitions for the Search method are described in the following table:

Parameter | Definition
nodeId | The node ID to start searching from. If null or an empty string (""), operations will be retrieved from the root node ("/").
searchCriteria | The search criteria, which is adapter-specific. If no search criteria are specified, the adapter should return all nodes.
maxChildNodes | The maximum number of result nodes to return. Use Int32.Max to retrieve all result nodes. Not supported by the Echo adapter.
timeout | The maximum time allowed for the operation to complete. Not supported by the Echo adapter.

For search result, your adapter can choose to return either category nodes or operation nodes, or both. It is up to the type of search feature your adapter supports.

Echo adapter Metadata Search

Depending on your target system's categories and operations, there are many ways to build an array of MetadataRetrievalNode objects to return. The way Echo adapter implements the search functionality is to go through every operation with its node ID in the following list:

Copy Code
Echo/OnReceiveEcho, inbound operation
Echo/EchoStrings, outbound operation
Echo/EchoGreetings, outbound operation
Echo/EchoGreetingFromFile, outbound operation
  • If the node ID then matches the search criteria, it creates a MetadataRetrievalNode object using the node ID of the operation, and then assigns the properties with values. For example,

    Copy Code
                    MetadataRetrievalNode nodeInbound = new MetadataRetrievalNode("Echo/OnReceiveEcho"); //create the MetadataRetrievalNode using the operation's node ID.
                nodeInbound.DisplayName = "OnReceiveEcho"; //The Display Name shown in the Name column of the Add Adapter Service Reference Visual Studio Plug-in
                nodeInbound.Description = "This operation echoes the location and length of a file dropped in the specified file system.";  //The Description shown as the tool tip in the Add Adapter Service Visual Studio Plug-in
                nodeInbound.Direction = MetadataRetrievalNodeDirections.Inbound;    //It is an inbound operation
                nodeInbound.IsOperation = true;  //It is an operation, not category.
  • And then add the object to a collection of the MetadataRetrievalNodes, for example,

    Copy Code
    resultList.Add(nodeInbound);
  • Lastly returns the collection in an array format.

    Copy Code
    return resultList.ToArray();

You can use the Add Adapter Service Reference Plug-in and Consume Adapter Service Add-in tools to perform a connection-based search for the available operations. For example, the following figure shows that when the searching criteria is the string Greeting, the search returns the EchoGreetings and EchoGreetingFromFile operations.

If no match is found, either tool will return the error message shown in the following figure.

Implementing the IMetadataSearchHandler

You will implement the Search method of the IMetadataSearchHandler interface. If the operation's display name matches the search criteria, you will create a MetadataRetrievalNode object for that operation, and then add that object to an array of the MetadataRetrievalNode objects.

To update the EchoAdapterMetadataSearchHandler class

  1. In Solution Explorer, double-click the EchoAdapterMetadataSearchHandler.cs file.

  2. In the Visual Studio editor, inside the Search method, replace the existing logic with the following. This logic creates a MetadataRetrievalNode object if Echo/OnReceiveEcho matches the specified search criteria.

    C# Copy Code
                List<MetadataRetrievalNode> resultList = new List<MetadataRetrievalNode>();
            if ("OnReceiveEcho".ToLower().Contains(searchCriteria.ToLower()))
            {
                MetadataRetrievalNode nodeInbound = new MetadataRetrievalNode("Echo/OnReceiveEcho");
                nodeInbound.DisplayName = "OnReceiveEcho";
                nodeInbound.Description = "This operation echoes the location and length of a file dropped in the specified file system.";
                nodeInbound.Direction = MetadataRetrievalNodeDirections.Inbound;
                nodeInbound.IsOperation = true;
                resultList.Add(nodeInbound);
            }

  3. Continue adding the following logic to create a MetadataRetrievalNode object if Echo/EchoStrings matches the specified search criteria.

    C# Copy Code
                if ("EchoStrings".ToLower().Contains(searchCriteria.ToLower()))
            {
                MetadataRetrievalNode outOpNode1 = new MetadataRetrievalNode("Echo/EchoStrings");
                outOpNode1.DisplayName = "EchoStrings";
                outOpNode1.Description = "This operation echoes the incoming string COUNT number of times in a string array.";
                outOpNode1.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode1.IsOperation = true;
                resultList.Add(outOpNode1);
            }

  4. Continue adding the following logic to create a MetadataRetrievalNode object if Echo/EchoGreetings matches the specified search criteria.

    C# Copy Code
            if ("EchoGreetings".ToLower().Contains(searchCriteria.ToLower()))
            {
                MetadataRetrievalNode outOpNode2 = new MetadataRetrievalNode("Echo/EchoGreetings");
                outOpNode2.DisplayName = "EchoGreetings";
                outOpNode2.Description = "This operation echoes the incoming Greeting object COUNT number of times in an array of type Greeting.";
                outOpNode2.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode2.IsOperation = true;
                resultList.Add(outOpNode2);
            }

  5. Continue adding the following code to create a MetadataRetrievalNode object if Echo/EchoGreetingFromFile matches the specified search criteria.

    C# Copy Code
                if ("EchoCustomGreetingFromFile".ToLower().Contains(searchCriteria.ToLower()))
            {
                MetadataRetrievalNode outOpNode3 = new MetadataRetrievalNode("Echo/EchoCustomGreetingFromFile");
                outOpNode3.DisplayName = "EchoCustomGreetingFromFile";
                outOpNode3.Description = "This operation echoes the greeting object by reading its instance from a file. The Greeting object's metadata is obtained from a predefined XSD file.";
                outOpNode3.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode3.IsOperation = true;
                resultList.Add(outOpNode3);
            }

  6. Continue adding the following code to return an array of MetadataRetrievalNode objects.

    C# Copy Code
    return resultList.ToArray();

  7. In Visual Studio, on the File menu, click Save All.

  8. On the Build menu, click Build Solution. You should successfully compiled the project. If not, ensure that you have followed every step above.

    Note
    You saved your work. You can safely close Visual Studio at this time or go to the next step, Step 6: Implement the Metadata Resolve Handler for the Echo Adapter.

What Did I Just Do?

You just implemented the metadata searching capability of the Echo adapter, by implementing the Search method of the IMetadataSearchHandler interface. Specifically, you created a MetadataRetrievalNode object for every operation that matches the criteria and then returned an array of the MetadataRetrievalNode objects.

Next Steps

You will implement the metadata resolving capability, and the outbound and inbound message exchange capabilities. Finally, you will build and deploy the Echo adapter.

See Also

Tasks

Step 4: Implement the Metadata Browse Handler for the Echo Adapter
Step 6: Implement the Metadata Resolve Handler for the Echo Adapter

Concepts

Tutorial 1: Develop the Echo Adapter

� 2014 Microsoft Corporation. All rights reserved.


Step 6: Implement the Metadata Resolve Handler for the Echo Adapter
Step 6 of 9

Time to complete: 45 minutes

In this step, you will implement the IMetadataResolverHandler interface to resolve operation and type metadata for the echo adapter. Regardless of your adapter's capability, you must implement this interface. The Adapter Development Wizard automatically generates the derived class called EchoAdapterMetadataResolverHandler for you.

In the following section, you will update the EchoAdapterMetadataResolverHandler class to get a better understanding on how to implement this interface. When you complete this step, you will have a working metadata resolve handler for the echo adapter.

Prerequisites

Before you begin this step, you must have successfully completed Step 5: Implement the Metadata Search Handler for the Echo Adapter. You must also understand the following operation and type classes:

  • ParameterizedOperationMetadata

  • OperationMetadata

  • OperationParameter

  • OperationResult

  • TypeMetadata

  • StructuredTypeMetadata

  • TypeMember

  • SimpleQualifiedType

  • ComplexQualifiedType

The IMetadataResolverHandler Interface

Copy Code
  public interface IMetadataResolverHandler : IConnectionHandler, IDisposable
    {
        bool IsOperationMetadataValid(string operationId, DateTime lastUpdatedTimestamp, TimeSpan timeout);
        bool IsTypeMetadataValid(string typeId, DateTime lastUpdatedTimestamp, TimeSpan timeout);
        OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved);
        TypeMetadata ResolveTypeMetadata(string typeId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved);
    }

The following table describes what each method does:

Method Name | Description
IsOperationMetadataValid | Returns a true if the type metadata has not changed since the date and time specified
IsTypeMetadataValid | Returns a Boolean value that indicates whether the specified type metadata is valid.
ResolveOperationMetadata | Resolves an operation ID to corresponding OperationMetadata
ResolveTypeMetadata | Resolves a supplied metadata typeId to a corresponding TypeMetadata.

To implement the IsOperationMetadataValid method

  1. In Solution Explorer, double-click the EchoAdapterMetadataResolverHandler.cs file.

  2. In the Visual Studio editor, right-click anywhere within the editor, in the context menu, point to Outlining, and then click Stop Outlining.

  3. In the Visual Studio editor, find the IsOperationMetadataValid method, inside this method, replace the existing with the following single statement to indicate that every specified operation metadata is valid.

    C# Copy Code
                return true;

To implement the IsTypeMetadataValid method

  • In the Visual Studio editor, find the IsTypeMetadataValid method, inside this method, replace the existing with the following single statement to indicate that every specified type metadata is valid.

    C# Copy Code
                return true;

To implement the ResolveOperationMetadata method

  1. In the Visual Studio editor, find the ResolveOperationMetadata method, inside this method, replace the existing with the following to resolve the OnReceiveEcho operation, void OnReceiveEcho(Uri path, long fileLength).

    C# Copy Code
                extraTypeMetadataResolved = null;
            switch( operationId )
            {
                case "Echo/OnReceiveEcho":
                    ParameterizedOperationMetadata om = new ParameterizedOperationMetadata(operationId, "OnReceiveEcho");
                    om.OriginalName = "lobNotification";
                    om.Description = "This operation echoes the location and length of a file dropped in the specified file system.";
                    om.OperationGroup = "EchoInboundContract";
                    om.OperationNamespace = EchoAdapter.SERVICENAMESPACE;
                    // syntax: void OnReceiveEcho(Uri path, long fileLength)
                    OperationParameter parmPath = new OperationParameter("path", OperationParameterDirection.In, QualifiedType.UriType, false);
                    parmPath.Description = "Absolute path of the file";
                    OperationParameter parmLength = new OperationParameter("length", OperationParameterDirection.In, QualifiedType.LongType, false);
                    parmLength.Description = "Length of the file received in this location.";
                    om.Parameters.Add(parmPath);
                    om.Parameters.Add(parmLength);
                    om.OperationResult = OperationResult.Empty;
                    return om;

  2. Continue adding the following to resolve the Echo/EchoStrings operation, string[] EchoStrings(string data).

    C# Copy Code
                    case "Echo/EchoStrings":
                    om = new ParameterizedOperationMetadata(operationId, "EchoStrings");
                    om.OriginalName = "lobEchoStrings";
                    om.Description = "This operation echoes the incoming string COUNT number of times in a string array.";
                    om.OperationGroup = "EchoOutboundContract";
                    om.OperationNamespace = EchoAdapter.SERVICENAMESPACE;
                    // syntax: string[] EchoStrings(string data)
                    OperationParameter parmData = new OperationParameter("data", OperationParameterDirection.In, QualifiedType.StringType, false);
                    parmData.Description = "Input string";
                    om.Parameters.Add(parmData);
                    om.OperationResult = new OperationResult(QualifiedType.StringType, true);
                    return om;

  3. Continue adding the following logic to resolve the Echo/EchoStrings operation, string[] EchoStrings(string data).

    C# Copy Code
                    case "Echo/EchoGreetings":
                    om = new ParameterizedOperationMetadata(operationId, "EchoGreetings");
                    om.OriginalName = "lobEchoGreetings";
                    om.Description = "This operation echoes the incoming Greeting object COUNT number of times in an array of type Greeting.";
                    om.OperationGroup = "EchoOutboundContract";
                    om.OperationNamespace = EchoAdapter.SERVICENAMESPACE;
                    // syntax: Greeting[] EchoGreetings(Greeting greeting)
                    ComplexQualifiedType cqtGreeting = new ComplexQualifiedType("Types/GreetingType");
                    OperationParameter parmGreeting = new OperationParameter("greeting", OperationParameterDirection.In, cqtGreeting, false);
                    parmGreeting.Description = "Input greeting";
                    om.Parameters.Add(parmGreeting);
                    om.OperationResult = new OperationResult(cqtGreeting, true);
                    return om;

  4. Continue adding the following logic to resolve the CustomGreeting EchoCustomGreetingFromFile(Uri greetingInstancePath) operation.

    C# Copy Code
                    case "Echo/EchoCustomGreetingFromFile":
                    om = new ParameterizedOperationMetadata(operationId, "EchoCustomGreetingFromFile");
                    om.OriginalName = "lobEchoGreetingUsePredefinedMetadata";
                    om.Description = "This operation echoes the incoming Greeting object COUNT number of times in an array of type Greeting.  The Greeting type metadata is created using predefined XSD file.";
                    om.OperationGroup = "EchoOutboundContract";
                    om.OperationNamespace = EchoAdapter.SERVICENAMESPACE;
                    OperationParameter parmGreetingInstancePath = new OperationParameter("greetingInstancePath", OperationParameterDirection.In, QualifiedType.UriType, false);
                    om.Parameters.Add(parmGreetingInstancePath);
                    ComplexQualifiedType cqtGreetingXsd = new ComplexQualifiedType("Types/CustomGreetingFromXsdType");
                    om.OperationResult = new OperationResult(cqtGreetingXsd, false);

                    // resolve extra typemetadata here
                    extraTypeMetadataResolved = new TypeMetadataCollection();

                    // use a predefined schema to generate metadata for this type
                    CustomGreetingTypeMetadata tmGreetingXsd = new CustomGreetingTypeMetadata("Types/CustomGreetingFromXsdType", "CustomGreeting");
                    extraTypeMetadataResolved.Add(tmGreetingXsd);
                    return om;

  5. Continue adding the following to handle default case.

    C# Copy Code
                    default:
                    throw new AdapterException("Cannot resolve metadata for operation identifier " + operationId);
            }

To implement the ResolveTypeMetadata method

  • In the Visual Studio editor, find the ResolveTypeMetadata method, inside this method, replace the existing with the following to return a TypeMetadata object.

    C# Copy Code
                extraTypeMetadataResolved = null;
            string typeNamespaceForGreeting = EchoAdapter.SERVICENAMESPACE + "/Types";
            switch (typeId)
            {
                case "Types/GreetingType":
                    StructuredTypeMetadata tmGreeting = new StructuredTypeMetadata(typeId, "Greeting");
                    tmGreeting.TypeNamespace = typeNamespaceForGreeting;
                    tmGreeting.Members.Add(new TypeMember("id", QualifiedType.GuidType, false));
                    tmGreeting.Members.Add(new TypeMember("sentDateTime", QualifiedType.DateTimeType, false));
                    ComplexQualifiedType cqtName = new ComplexQualifiedType("Types/NameType");
                    tmGreeting.Members.Add(new TypeMember("name", cqtName, false));
                    tmGreeting.Members.Add(new TypeMember("greetingText", QualifiedType.StringType, false));
                    return tmGreeting;

                case "Types/NameType":
                    StructuredTypeMetadata tmName = new StructuredTypeMetadata(typeId, "Name");
                    tmName.TypeNamespace = typeNamespaceForGreeting;
                    ComplexQualifiedType cqtSalutation = new ComplexQualifiedType("Types/SalutationType");
                    tmName.Members.Add(new TypeMember("salutation", cqtSalutation, false));
                    tmName.Members.Add(new TypeMember("firstName", QualifiedType.StringType, false));
                    tmName.Members.Add(new TypeMember("middleName", QualifiedType.StringType, false));
                    tmName.Members.Add(new TypeMember("lastName", QualifiedType.StringType, false));
                    return tmName;

                case "Types/SalutationType":
                    EnumTypeMetadata tmSalutation = new EnumTypeMetadata(typeId, "Salutation", new string[] { "Mr.", "Mrs.", "Dr.", "Ms.", "Miss" });
                    tmSalutation.TypeNamespace = typeNamespaceForGreeting;
                    return tmSalutation;

                default:
                    throw new AdapterException("Cannot resolve metadata for type identifier " + typeId);
            }

To define the custom greeting type metadata class

  1. In Solution Explorer, right-click the Echo Adapter project, point to Add, and then click New Item.

  2. In the Add New Item dialog box, under Templates, click Class.

  3. In the Name text box, type CustomGreetingTypeMetadata.

  4. Click Add.

  5. In the Visual Studio editor, replace the existing code with the following:

    C# Copy Code
    using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.ServiceModel.Channels.Common;
using System.Xml;
using System.Xml.Schema;
using System.IO;

namespace Microsoft.Adapters.Samples.EchoV2
{
    public class CustomGreetingTypeMetadata : TypeMetadata
    {
        private const string CONST_METADATA_FILE_NAME = "Microsoft.Adapters.Samples.EchoV2.CustomGreeting.xsd";

        public CustomGreetingTypeMetadata(string typeId, string typeName)
            : base(typeId, typeName)
        {
            this.TypeNamespace = EchoAdapter.SERVICENAMESPACE + "/PreDefinedTypes";
            this.Description = " ";
            this.CanUseCommonCache = true;
            // if the nillable is not set to true, the generated proxy wraps the operation
            // with request and response objects
            this.IsNillable = true;
        }

        /// <summary>
        /// Override the base ExportXmlSchema to provide own
        /// custom XML Schema
        /// </summary>
        /// <param name="schemaExportContext"></param>
        /// <param name="metadataLookup"></param>
        /// <param name="timeout"></param>
        public override void ExportXmlSchema(XmlSchemaExportContext schemaExportContext, MetadataLookup metadataLookup, TimeSpan timeout)
        {
            if (schemaExportContext == null)
            {
                throw new AdapterException("Schema export context is null.");
            }
            // Read in XML Schema file or create XmlSchema object yourself
            Stream predefinedXsdFile = System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream(CONST_METADATA_FILE_NAME);
            XmlReader reader = XmlReader.Create(predefinedXsdFile);
            XmlSchema schema = XmlSchema.Read(reader, null);
            if (!IsComplexTypeAlreadyDefined(schemaExportContext.SchemaSet, schema))
            {
                schemaExportContext.SchemaSet.Add(schema);
                if (!schemaExportContext.NamespacePrefixSet.ContainsKey(this.TypeNamespace))
                {
                    schemaExportContext.NamespacePrefixSet.Add(this.TypeNamespace, getUniqueNamespacePrefix(schemaExportContext, 0));
                }
            }
            reader.Close();
        }

        /// <summary>
        /// A default value cannot be set for this type metadata.
        /// </summary>
        public override bool CanSetDefaultValue
        {
            get { return false; }
        }

        /// <summary>
        /// Helper function to see if the schema is already defined in the
        /// XmlSchemaSet.
        /// </summary>
        /// <param name="oldschemaset"></param>
        /// <param name="newschema"></param>
        /// <returns></returns>
        public static bool IsComplexTypeAlreadyDefined(XmlSchemaSet oldschemaset, XmlSchema newschema)
        {
            // ensure correct namespace was defined in the passed-in schema
            foreach (XmlSchema schema in oldschemaset.Schemas(newschema.TargetNamespace))
            {
                foreach (XmlSchemaObject newschemaObject in newschema.Items)
                {
                    if (newschemaObject is XmlSchemaComplexType)
                    {
                        //check for the definition of complex type in the schemaset
                        foreach (XmlSchemaObject schemaObject in schema.Items)
                        {
                            XmlSchemaComplexType complexType = schemaObject as XmlSchemaComplexType;
                            // Definition of this Complex Type already exists
                            if (complexType != null && String.Compare(complexType.Name, ((XmlSchemaComplexType)newschemaObject).Name, false, System.Globalization.CultureInfo.InvariantCulture) == 0)
                                return true;
                        }
                    }
                }
            }
            return false;
        }

        /// <summary>
        /// Helper function to generate a unique namespace prefix
        /// </summary>
        /// <param name="schemaExportContext"></param>
        /// <param name="startSuffix"></param>
        /// <returns></returns>
        private string getUniqueNamespacePrefix(XmlSchemaExportContext schemaExportContext, int startSuffix)
        {
            string defaultPrefix = "ns";
            string val = defaultPrefix + startSuffix;
            if (schemaExportContext.NamespacePrefixSet.ContainsValue(val))
            {
                return getUniqueNamespacePrefix(schemaExportContext, ++startSuffix);
            }
            else
            {
                return val;
            }
        }
    }
}

  6. In Visual Studio, from the File menu, click Save All.

To create the custom greeting XML schema definition

  1. In Solution Explorer, right-click the Echo Adapter project, point to Add, and then click New Item.

  2. In the Add New Item dialog box, under Templates, click XML Schema.

  3. In the Name text box, type CustomGreeting.

  4. Click Add.

  5. In Solution Explorer, right-click the CustomGreeting.xsd file and choose View Code.

  6. In the Visual Studio editor, begin by replacing the existing code with the following code that begins the definition of the CustomGreeting schema:

    C# Copy Code
    <?xml version="1.0" encoding="utf-8" ?>
<xs:schema id="XMLSchema1"
                  targetNamespace="http://tempuri.org/XMLSchema1.xsd"
                  elementFormDefault="qualified"
                  xmlns="http://tempuri.org/XMLSchema1.xsd"
                  xmlns:mstns="http://tempuri.org/XMLSchema1.xsd"
                  xmlns:xs="http://www.w3.org/2001/XMLSchema">
</xs:schema>

    with the following code that begins the definition of the CustomGreeting schema:

    C# Copy Code
    <?xml version="1.0" encoding="utf-16"?>
<xsd:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns="echov2://microsoft.adapters.samples.echov2/PreDefinedTypes" elementFormDefault="qualified" targetNamespace="echov2://microsoft.adapters.samples.echov2/PreDefinedTypes" xmlns:xsd ="http://www.w3.org/2001/XMLSchema">

  7. Add the following to define the CustomGreeting element:

    C# Copy Code
    <xsd:element name="greeting" type="CustomGreeting" />

  8. Now add the definition of the CustomGreeting complex type:

    C# Copy Code
      <xsd:complexType name="CustomGreeting">
    <xsd:sequence>
      <xsd:element name="address" type="UsAddress" />
      <xsd:element name="greetingText" type="xsd:string" />
    </xsd:sequence>
  </xsd:complexType>

  9. Continue the CustomGreeting schema definition by adding the UsAddress complex type:

    C# Copy Code
      <xsd:complexType name="UsAddress">
    <xsd:sequence>
      <xsd:element minOccurs="1" maxOccurs="1" name="street1" nillable="true" type="xsd:string" />
      <xsd:element minOccurs="0" maxOccurs="1" name="street2" type="xsd:string" />
      <xsd:element minOccurs="1" maxOccurs="1" name="city" type="xsd:string" />
      <xsd:element minOccurs="1" maxOccurs="1" name="state" type="xsd:string" />
      <xsd:element name="zip" type="PostalCode" />
    </xsd:sequence>
  </xsd:complexType>

  10. Complete the definition of the CustomGreeting schema by adding the PostalCode simple type and the closing tag for the schema:

    C# Copy Code
      <xsd:simpleType name="PostalCode">
    <xsd:restriction base="xsd:positiveInteger">
      <xsd:pattern value="\d{5}" />
    </xsd:restriction>
  </xsd:simpleType>
</xsd:schema>

  11. Now update the build action for this file so it is treated as an embedded resource. To do this, in the Visual Studio solution pane, right-click the file and choose Properties. Change Build Action from None to Embedded Resource.

  12. In Visual Studio, from the File menu, click Save All.

Note
You saved your work. You can safely close Visual Studio at this time or go to the next step, Step 7: Implement the Synchronous Outbound Handler for the Echo Adapter.

What Did I Just Do?

You just implemented the metadata resolving capability for the echo adapter.

Next Steps

In the next step, you will implement the synchronous outbound handler for the Echo Adapter. You will then implement the synchronous inbound handler and then build and deploy the Echo Adapter.

See Also

Tasks

Step 5: Implement the Metadata Search Handler for the Echo Adapter
Step 7: Implement the Synchronous Outbound Handler for the Echo Adapter

Concepts

Tutorial 1: Develop the Echo Adapter

� 2014 Microsoft Corporation. All rights reserved.


Step 7: Implement the Synchronous Outbound Handler for the Echo Adapter
Step 7 of 9

Time to complete: 30 minutes

In this step, you will implement the synchronous outbound capability of the Echo adapter. According to the WCF LOB Adapter SDK, to support the synchronous outbound capability, you must implement the IOutboundHandler interface. For the Echo adapter, the Adapter Development Wizard automatically generates one derived class called EchoAdapterOutboundHandler.

In the following sections, you will update the EchoAdapterOutboundHandler class to get a better understanding of how to implement the Execute, how to parse the incoming WCF request message, and how to generate outgoing WCF response messages.

Prerequisites

Before you begin this step, you must have successfully completed Step 6: Implement the Metadata Resolve Handler for the Echo Adapter. A basic familiarity with IOutboundHandler is also helpful.

The IOutboundHandler Interface

The IOutboundHandler is defined as:

Copy Code
    public interface IOutboundHandler : IConnectionHandler, IDisposable
    {
        Message Execute(Message message, TimeSpan timeout);
    }

The Execute method executes the incoming WCF request message by invoking the corresponding method on the target system and then returns an outgoing WCF response message. The definitions of its parameters are listed in the following table:

Parameter | Definition
message | Incoming WCF request message.
timeout | Time interval within which this operation should be completed. The operation should throw a TimeoutException if the specified timeout is exceeded before the operation is completed.

If your adapter is performing a one-way send (there is no response message expected by your adapter), this method should return null. If your adapter is performing a two-way operation with OperationResult equal to Empty, this method will return a WCF response message with an empty body. Otherwise, it should return the WCF response message with a body that contains the values in the OperationResult object. To construct the response action string, use OutputMessageAction.

Echo Adapter Synchronous Outbound

Depending on your target system's operations, there are many ways to implement the Execute method. For the Echo adapter, there are three outbound operations, and their assigned node IDs and display names are:

  • string[] EchoStrings(string data), node ID = Echo/EchoString, display name=EchoString

  • Greeting[] EchoGreetings(Greeting greeting), node ID=Echo/EchoGreetings, display name=EchoGreetings

  • CustomGreeting EchoCustomGreetingFromFile(Uri greetingInstancePath), nodeID=Echo/EchoCustomGreetingFromFile, display name=EchoGreetings

To correctly parse the incoming WCF request message and generate the outgoing WCF response message, you must be familiar with the following elements within the SOAP message used by the WCF LOB Adapter SDK:

For the incoming WCF request message:

  • The WCF input message action = operation's node ID

  • Incoming message body = The start element of the body is <displayname><parameter name>{data}</parameter name></displayname>

For the outgoing WCF response message:

  • The WCF output message action = operation's node ID + "/response"

  • Outgoing message body = The start element of the body is <displayname + "Response">, followed by <displayname + "Result">, and followed by the <datatype>data</datatype></displayname+"Result></displayname + "Response">

For example, operation string[] EchoStrings(string data), node ID = Echo/EchoStrings, and display name= EchoStrings:

The WCF input message action = "Echo/EchoStrings"; and the input body looks as follows, since the parameter name is data.

Copy Code
<EchoStrings>
<data>{data}
</data>
</EchoStrings>

The WCF output message action = "Echo/EchoStrings/response"; and the output body looks as follows, since the data type is string.

Copy Code
<EchoStringsResponse>
<EchoStringsResult>
<string>{data}</string>
</EchoStringsResult>
</EchoStringsResponse>

When parsing the incoming WCF request message, you can use the XmlDictionaryReader to retrieve content within the WCF message; when composing the WCF response message, you can use the XmlWriter to do so.

Implementing the IOutboundHandler

You will implement the Execute method of the IOutboundHandler. First, gets a OperationMetadata object based on the input message action. Then, parses the incoming WCF message and executes the associated echo functionality based on each operation. Finally, creates an outgoing WCF response message by using the format of outgoing message body.

To implement the Execute method of the EchoAdapterOutboundHandler class

  1. In Solution Explorer, double-click the EchoAdapterOutboundHandler.cs file.

  2. In the Visual Studio editor, add the following two using directives to the existing set of using directives.

    C# Copy Code
    using System.Xml;
using System.IO;

  3. Inside the Execute method, replace the existing logic with the following:

    1. This logic verifies the requested operation.

    2. It gets the OperationMetadata object based on the SOAP input message action.

    3. Based on the action type, it parses the WCF request message and invokes the appropriate operation.

    C# Copy Code
                // Trace input message
            EchoAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Verbose, "http://Microsoft.Adapters.Samples.Sql/TraceCode/InputWcfMessage", "Input WCF Message", this, new MessageTraceRecord(message));
            // Timeout is not supported in this sample
            OperationMetadata om = this.MetadataLookup.GetOperationDefinitionFromInputMessageAction(message.Headers.Action, timeout);
            if (om == null)
            {
                throw new AdapterException("Invalid operation metadata for " + message.Headers.Action);
            }
            if (timeout.Equals(TimeSpan.Zero))
            {
                throw new AdapterException("time out is zero");
            }

            switch (message.Headers.Action)
            {
                case "Echo/EchoStrings":
                    return ExecuteEchoStrings(om as ParameterizedOperationMetadata, message, timeout);

                case "Echo/EchoGreetings":
                    return ExecuteEchoGreetings(om as ParameterizedOperationMetadata, message, timeout);

                case "Echo/EchoCustomGreetingFromFile":
                    return ExecuteEchoCustomGreetingFromFile(om, message, timeout);
            }
            return null;

  4. Now add the ExecuteEchoStrings method to handle the string[] EchoStrings(string data) operation. This helper function reads the WCF request message, checks to see if the echoInUpperCase URI element is set to true; if so, it converts the input string to upper case as many times as the count variable indicates. Then, it generates the WCF response message in the format of: <EchoStringsResponse><EchoStringResult><string>{data}</string></EchoStringResult></EchoStringsResponse>.

    C# Copy Code
            private Message ExecuteEchoStrings(ParameterizedOperationMetadata om, Message message, TimeSpan timeout)
        {
            // ** Read the WCF request
            // ** <EchoStrings><name>{text}</name></EchoStrings>
            XmlDictionaryReader inputReader = message.GetReaderAtBodyContents();
            while (inputReader.Read())
            {
                if ((String.IsNullOrEmpty(inputReader.Prefix) && inputReader.Name.Equals("data"))
                    || inputReader.Name.Equals(inputReader.Prefix + ":" + "data")) break;
            }
            inputReader.Read();
            // if the connection property "echoInUpperCase" is set to true, it echoes the data in upper case
            bool echoInUpperCase = this.Connection.ConnectionFactory.ConnectionUri.EchoInUpperCase;
            string inputValue = echoInUpperCase ? inputReader.Value.ToUpper() : inputReader.Value;
            int arrayCount = this.Connection.ConnectionFactory.Adapter.Count;

            // ** Generate the WCF response
            // ** <EchoStringsResponse><EchoStringResult>{Name}</EchoStringResult></EchoStringsResponse >
            StringBuilder outputString = new StringBuilder();
            XmlWriterSettings settings = new XmlWriterSettings();
            settings.OmitXmlDeclaration = true;
            XmlWriter replywriter = XmlWriter.Create(outputString, settings);
            replywriter.WriteStartElement(om.DisplayName + "Response", EchoAdapter.SERVICENAMESPACE);
            replywriter.WriteStartElement(om.DisplayName + "Result", EchoAdapter.SERVICENAMESPACE);
            if (om.OperationResult.IsArray)
            {
                for (int count = 0; count < arrayCount; count++)
                {
                    replywriter.WriteElementString("string", "http://schemas.microsoft.com/2003/10/Serialization/Arrays", inputValue);
                }
            }
            replywriter.WriteEndElement();
            replywriter.WriteEndElement();
            replywriter.Close();
            XmlReader replyReader = XmlReader.Create(new StringReader(outputString.ToString()));
            return Message.CreateMessage(message.Version, om.OutputMessageAction, replyReader);
        }

  5. Continue by adding the ExecuteEchoGreetings method to handle the EchoGreetings operation. This helper function reads the WCF request message, resolves operation and type by the ResolveOperationMetadata and ResolveTypeMetadata methods of the IMetadataResolverHandler interface, and then generates the WCF response message using the format of: <EchoGreetingsResponse><EchoGreetingsResult>…message…</EchoGreetingsResult></EchoGreetingsResponse>.

    C# Copy Code
            private Message ExecuteEchoGreetings(ParameterizedOperationMetadata om, Message message, TimeSpan timeout)
        {
            // NOTE this method doesn't return response in upper case based on
            // connection property echoInUpperCase

            // ** Read the WCF request
            String inputValue = String.Empty;
            using (XmlDictionaryReader inputReader = message.GetReaderAtBodyContents())
            {

                bool foundGreeting = inputReader.ReadToDescendant("greeting");
                if (foundGreeting)
                {
                    inputValue = inputReader.ReadInnerXml();
                }
            }

            int arrayCount = this.Connection.ConnectionFactory.Adapter.Count;

            // ** Generate the WCF response
            StringBuilder outputString = new StringBuilder();
            XmlWriterSettings settings = new XmlWriterSettings();
            settings.OmitXmlDeclaration = true;
            XmlWriter replywriter = XmlWriter.Create(outputString, settings);
            replywriter.WriteStartElement(om.DisplayName + "Response", EchoAdapter.SERVICENAMESPACE);
            replywriter.WriteStartElement(om.DisplayName + "Result", EchoAdapter.SERVICENAMESPACE);
            for(int i = 0; i < arrayCount; i++ )
            {
                ComplexQualifiedType cqtResult = om.OperationResult.QualifiedType as ComplexQualifiedType;
                StructuredTypeMetadata tmResult = MetadataLookup.GetTypeDefinition(cqtResult.TypeId, timeout) as StructuredTypeMetadata;
                replywriter.WriteStartElement(tmResult.TypeName, tmResult.TypeNamespace);
                replywriter.WriteRaw(inputValue);
                replywriter.WriteEndElement();
            }
            replywriter.WriteEndElement();
            replywriter.WriteEndElement();
            replywriter.Close();
            XmlReader replyReader = XmlReader.Create(new StringReader(outputString.ToString()));
            return Message.CreateMessage(message.Version, om.OutputMessageAction, replyReader);
        }

  6. Now add the ExecuteEchoCustomGreetingFromFile method to handle the EchoCustomGreetingFromFile operation. This helper function reads the WCF request message, reads the message from the specified file, and then generates the WCF response message using the format of: <EchoGreetingsFromFileResponse><EchoGreetingsFromFileResult>…message…</EchoGreetingsFromFileResult></EchoGreetingsFromFileResponse>.

    C# Copy Code
            private Message ExecuteEchoCustomGreetingFromFile(OperationMetadata om, Message message, TimeSpan timeout)
        {
            // NOTE this method doesn't return response in upper case based on
            // connection property echoInUpperCase

            // ** Read the WCF request
            Uri path;
            using (XmlDictionaryReader inputReader = message.GetReaderAtBodyContents())
            {
                inputReader.MoveToContent();
                inputReader.ReadStartElement(om.DisplayName);
                inputReader.MoveToContent();
                // The path contains the location of the XML file that contains the instance of Greeting object to read
                path = new Uri(inputReader.ReadElementContentAsString());
                inputReader.ReadEndElement();
            }

            // ** Generate the WCF response
            StringBuilder outputString = new StringBuilder();
            XmlWriterSettings settings = new XmlWriterSettings();
            settings.OmitXmlDeclaration = true;
            XmlWriter replywriter = XmlWriter.Create(outputString, settings);
            replywriter.WriteStartElement(om.DisplayName + "Response", EchoAdapter.SERVICENAMESPACE);
            replywriter.WriteStartElement(om.DisplayName + "Result", EchoAdapter.SERVICENAMESPACE);
            // Read the XML file and set it to the reply writer here
            FileStream stream = new FileStream(path.AbsolutePath, FileMode.Open);
            XmlDictionaryReader xdr = XmlDictionaryReader.CreateTextReader(stream, new XmlDictionaryReaderQuotas());
            xdr.MoveToContent();
            string rawGreeting = xdr.ReadInnerXml();
            replywriter.WriteRaw(rawGreeting);
            replywriter.WriteEndElement();
            replywriter.WriteEndElement();
            replywriter.Close();
            XmlReader replyReader = XmlReader.Create(new StringReader(outputString.ToString()));
            return Message.CreateMessage(message.Version, om.OutputMessageAction, replyReader);
        }

  7. In Visual Studio, on the File menu, click Save All.

  8. On the Build menu, click Build Solution. It should compile without errors. If not, ensure that you have followed every step above. Now, you can safely close Visual Studio or continue on to Step 8: Implement the Synchronous Inbound Handler for the Echo Adapter.

What Did I Just Do?

In this step, you learned how to implement the synchronous outbound messaging functionality of the Echo adapter. To do so, you implemented the Execute method of the IOutboundHandler. This method parsed the incoming WCF request message, performed the necessary actions, and then generated the outgoing WCF response message.

Specifically, for the incoming WCF request message, you used WCF Action to retrieve the input message action by further understanding the basic structure of the incoming message body. For the outgoing WCF response message, you used OutputMessageAction to retrieve the output message action by further understanding the basic structure of the outgoing message body. When parsing and composing WCF messages, you used XmlDictionaryReader to read the incoming WCF request message and used XmlWriter to write an outgoing WCF response message.

Next Steps

You will build and deploy the Echo adapter.

See Also

Tasks

Step 6: Implement the Metadata Resolve Handler for the Echo Adapter
Step 8: Implement the Synchronous Inbound Handler for the Echo Adapter

� 2014 Microsoft Corporation. All rights reserved.


Step 8: Implement the Synchronous Inbound Handler for the Echo Adapter
Step 8 of 9

Time to complete: 45 minutes

In this step, you implement the inbound capability of the echo adapter. This capability will allow the adapter to listen for data or events from the target system. According to the WCF LOB Adapter SDK, you only need to implement the IInboundHandler interface, when your adapter supports inbound capability. The Adapter Development Wizard automatically generates the derived class called EchoAdpterInboundHandler for you.

In the following section, you will update the EchoAdpterInboundHandler class to get a better understanding on how to implement this interface. When you complete this step, you will have a working inbound handler for the echo adapter.

Prerequisites

Before you begin this step, you must have successfully completed Step 7: Implement the Synchronous Outbound Handler for the Echo Adapter. A basic familiarity with IInboundHandler is also helpful.

The IInboundHandler Interface

The IInboundHandler is defined as:

Copy Code
public interface IInboundHandler : IConnectionHandler, IDisposable
{
          void StartListener(string[] actions, TimeSpan timeout);
          void StopListener(TimeSpan timeout);
          bool TryReceive(TimeSpan timeout, out Message message, out IInboundReply reply);
          bool WaitForMessage(TimeSpan timeout);
}

The method descriptions are:

Method | Description
StartListener | Starts listening to messages with the provided WS-Addressing Actions. If none is specified, it listens to all or the default actions.
StopListener | Stops listening.
TryReceive | Tries to receive an inbound message from the target system.
WaitForMessage | Waits for an inbound WCF message from the target system.

For more details on the description for each method parameters, see the documentation on the IInboundHandler interface.

Implementing the EchoAdpterInboundHandler

The echo adapter uses the FileSystemWatcher to simulate the target system. In the following, you will implement each method within the IInboundHandler interface, StartListener, StopListener, TryReceive and WaitForMessage.

To implement IInboundHandler interface in the EchoAdpterInboundHandler class

  1. In Solution Explorer, double-click the EchoAdapterInboundHandler.cs file.

  2. In the Visual Studio editor, add the following lines to the existing set of using directives.

    C# Copy Code
    using System.IO;
using System.ServiceModel.Channels;
using System.Xml;
using System.Diagnostics;

  3. Now add class level variables to the EchoAdapterInboundHandler class. These variables are used to monitor the file system for file activity. Copy the declarations below into the class before the constructor.

    C# Copy Code
       private Queue<Message> inboundQueue;
   private FileSystemWatcher inboundWatcher;
   private Object inboundQueueSynchronizationLock;
   private string path;
   private string filter;

  4. Inside the EchoAdapterInboundHandler constructor method, add the following code to initialize the file watching infrastructure and to capture the monitoring path and filter.

    C# Copy Code
                inboundWatcher = null;
            inboundQueueSynchronizationLock = new Object();
            path = connection.ConnectionFactory.Adapter.InboundFileSystemWatcherFolder;
            filter = connection.ConnectionFactory.Adapter.InboundFileFilter;

  5. Now add the following code to the StartListener method. The code implements logic to verify parameters and start monitoring for file activity.

    C# Copy Code
                // if no actions are provided, log an error in the trace log
            // and throw an exception
            if (actions.Length == 0)
            {
                EchoAdapterUtilities.Trace.Trace(TraceEventType.Error, "http://echoadapterv2/startlistener/noactions", "No operation actions were received for listener to do specific processing.", this);
                throw new AdapterException("Unable to receive any actions for inbound handler to start listening.");
            }

            inboundQueue = new Queue<Message>();
            foreach (string action in actions)
            {
                // for the OnReceiveEcho action listen for a new file created event
                if ("Echo/OnReceiveEcho".Equals(action))
                {
                    if (inboundWatcher == null)
                    {
                        inboundWatcher = new FileSystemWatcher(path);
                        inboundWatcher.Filter = filter;
                        // Begin monitoring
                        inboundWatcher.EnableRaisingEvents = true;
                    }
                    inboundWatcher.Created += new FileSystemEventHandler(FileMonitor_Created);
                    EchoAdapterUtilities.Trace.Trace(TraceEventType.Information, "http://echoadapterv2/startlistener", "Listening for file created event for " + filter + " in path " + path, this);
                }
            }

  6. Continue by adding an implementation for the StopListener method.

    C# Copy Code
                if (inboundWatcher != null)
            {
                // End monitoring
                inboundWatcher.EnableRaisingEvents = false;
                inboundWatcher = null;
            }
            lock (inboundQueueSynchronizationLock)
            {
                inboundQueue.Clear();
                inboundQueue = null;
            }

  7. Now provide an implementation for the TryReveive method. This method retrieves the most recent file receive message from the internal queue if one is available.

    C# Copy Code
                reply = new EchoAdapterInboundReply();
            message = null;
            TimeoutHelper timeoutHelper = new TimeoutHelper(timeout);
            while (true)
            {
                lock (inboundQueueSynchronizationLock)
                {
                    if (inboundQueue == null)
                    {
                        //listener has been closed
                        return false;
                    }
                    if (inboundQueue.Count != 0)
                    {
                        message = inboundQueue.Dequeue();
                        if (message != null)
                        {
                            return true;
                        }
                    }
                }
                if (timeoutHelper.IsExpired)
                {
                    return false;
                }
                //wait for sometime, and check again
                System.Threading.Thread.Sleep(500);
            }

  8. Continue by adding an implementation for the WaitForMessage method.

    C# Copy Code
                while (inboundQueue.Count == 0) { };
            Message msg = inboundQueue.Peek();
            if (msg != null)
            {
                return true;
            }
            else
            {
                return false;
            }

  9. Now supply the callback for the file watcher. To do so, add the new method FileMonitor_Created to the EchoAdapterInboundAdapter class.

    C# Copy Code
            private void FileMonitor_Created(object sender, FileSystemEventArgs e)
        {
            lock (inboundQueueSynchronizationLock)
            {
                if (e.ChangeType == WatcherChangeTypes.Created)
                {
                    // wait for file to close - should do this in a better manner
                    System.Threading.Thread.Sleep(500);
                    try
                    {
                        EchoAdapterUtilities.Trace.Trace(TraceEventType.Information, "http://echoadapterv2/FileMonitorCreated", "File " + e.FullPath + " created.", this);
                        FileInfo fileInfo = new FileInfo(e.FullPath);
                        // Create WCF message to send to the inbound service
                        // that is listening for messages from adapter
                        String xmlData = String.Format(@"<OnReceiveEcho xmlns=""{0}""><path>{1}</path><length>{2}</length></OnReceiveEcho>", EchoAdapter.SERVICENAMESPACE, e.FullPath, fileInfo.Length);
                        // set action string
                        XmlReader reader = XmlReader.Create(new StringReader(xmlData));
                        // create WCF message
                        Message requestMessage = Message.CreateMessage(MessageVersion.Default
                                    , "Echo/OnReceiveEcho"
                                    , reader);
                        requestMessage.Headers.To = new Uri(path);
                        inboundQueue.Enqueue(requestMessage);
                    }
                    catch (Exception ex)
                    {
                        String message = String.Format("An exception was thrown while trying to open file {1}.", e.FullPath);
                        EchoAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Error, "http://echoadapterv2/FileMonitorCreated", message, this, ex);
                        throw new AdapterException(message, ex);
                    }
                }
            }
        }

  10. Now you must remove the NotImplementedException exceptions thrown by the internal EchoAdapterInboundReply class. To do this, delete the following statement from the Abort and Reply methods.

    C# Copy Code
                throw new NotImplementedException("The method or operation is not implemented.");

    Your Abort and Reply methods should be similar to the following.

    C# Copy Code
            /// <summary>
        /// Abort the inbound reply call
        /// </summary>
        public override void Abort()
        {
        }

        /// <summary>
        /// Reply message implemented
        /// </summary>
        public override void Reply(System.ServiceModel.Channels.Message message
            , TimeSpan timeout)
        {
        }

  11. To complete the implementation for the inbound handler, add the following class to EchoAdapterOutboundHandler.cs. This class provides timeout support for the inbound handler implementation.

    C# Copy Code
        /// <summary>
    /// Utility class containing helper functions for measuring timeout
    /// </summary>
    class TimeoutHelper
    {
        private TimeSpan timeout;
        private DateTime creationTime;
        private Boolean isInfinite;

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="timeout"></param>
        public TimeoutHelper(TimeSpan timeout)
        {
            this.creationTime = DateTime.Now;
            this.timeout = timeout;
            if (timeout.Equals(Infinite)) this.isInfinite = true;
        }

        /// <summary>
        /// Value of infinite timespan
        /// </summary>
        public static TimeSpan Infinite
        {
            get { return TimeSpan.MaxValue; }
        }

        /// <summary>
        /// Value indicating remaining timeout
        /// </summary>
        public TimeSpan RemainingTimeout
        {
            get
            {
                if (this.isInfinite) return Infinite;
                return this.timeout.Subtract(DateTime.Now.Subtract(this.creationTime));
            }
        }

        /// <summary>
        /// Get remaining timeout value and throw an exception if the timeout
        /// has expired.
        /// </summary>
        /// <param name="exceptionMessage"></param>
        /// <returns></returns>
        public TimeSpan GetRemainingTimeoutAndThrowIfExpired(String exceptionMessage)
        {
            if (this.isInfinite) return Infinite;
            if (RemainingTimeout < TimeSpan.Zero)
            {
                throw new TimeoutException(exceptionMessage);
            }
            return RemainingTimeout;
        }

        /// <summary>
        /// Throw an exception if the timeout has expired.
        /// </summary>
        /// <param name="exceptionMessage"></param>
        public void ThrowIfTimeoutExpired(String exceptionMessage)
        {
            if (RemainingTimeout < TimeSpan.Zero)
            {
                throw new TimeoutException(exceptionMessage);
            }

        }

        /// <summary>
        /// Value indicating whether timeout has expired.
        /// </summary>
        public Boolean IsExpired
        {
            get
            {
                if (this.isInfinite) return false;
                return RemainingTimeout < TimeSpan.Zero;
            }
        }
    }

  12. In Visual Studio, on the File menu, click Save All.

  13. On the Build menu, click Build Solution. It should compile without errors. If not, ensure that you have followed every step above.

Note
You saved your work. You can safely close Visual Studio at this time or go to the next step, Step 9: Build and Deploy the Echo Adapter.

What Did I Just Do?

In this step of the Echo Adapter tutorial, you provided an implementation for the Inbound Handler. This implementation provides file watching capabilities for the Echo Adapter using the FileSystemWatcher class of the .NET Framework.

Next Steps

In the next step, you will deploy the adapter.

See Also

Tasks

Step 9: Build and Deploy the Echo Adapter
Step 7: Implement the Synchronous Outbound Handler for the Echo Adapter

� 2014 Microsoft Corporation. All rights reserved.


Step 9: Build and Deploy the Echo Adapter
Step 9 of 9

Time to complete: 10 minutes

In this step, you will perform the tasks necessary to deploy the Echo Adapter. This involves all of the following:

  • Create a strong name file and assign it to the Echo Adapter assembly

  • Build the Echo Adapter

  • Publish the assembly into the GAC

  • Register the Echo Adapter with the Windows Communication Foundation (WCF)

Prerequisites

To successfully complete this step, you should be familiar with strong name files and the GAC. A basic understanding of Windows Communication Foundation (WCF) configuration is helpful but not required.

To assign a strong name to your assembly

  1. In Solution Explorer, right-click the EchoAdapter project, and then click Properties.

  2. In the EchoAdapter Property Pages dialog box, select Signing from the left pane.

  3. Click the Sign the assembly tab.

  4. Choose <new…> for the strong name file. When prompted for a file name, type EchoAdapter.snk,deselect the protect my key file with a password option, then click OK.

  5. Click the Application tab.

  6. Change the assembly name to Microsoft.Adapters.Samples.EchoV2.

  7. Click File on the Visual Studio menu then choose Save All.

To build and deploy Echo Adapter

  1. In Solution Explorer, right-click the EchoAdapter project, and then click Build. If the build does not succeed, fix any errors and try rebuilding the Echo Adapter.

  2. Open a Visual Studio command prompt.

  3. Type the following command:

    gacutil.exe /if "<path to assembly\Microsoft.Adapters.Samples.EchoV2.dll>"

    This installs the assembly to the GAC, overwriting any existing assembly that has the same assembly name.

To register the Echo Adapter with Windows Communication Foundation

  1. Edit the machine.config file located in the Microsoft .NET configuration folder. To do this, click Start, click Run, type notepad <Windows install path>\Microsoft.NET\Framework\<version>\CONFIG\machine.config, and then click OK.

  2. Update the machine.config file. If your machine.config does not contain a system.serviceModel section, add the following section at the end of the configuration file but before the closing root tag.

    Note
    Replace the version, culture, public key token and other assembly-specific information with your adapter's information.

    Copy Code
    <system.serviceModel>
  <client>
    <endpoint binding="echoAdapterBindingV2" contract="IMetadataExchange"
      name="echov2" />
  </client>
  <extensions>
    <bindingElementExtensions>
      <add name="echoAdapterV2" type="Microsoft.Adapters.Samples.EchoV2.EchoAdapterBindingElementExtensionElement,Microsoft.Adapters.Samples.EchoV2, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxxxxxxxxxxx" />
    </bindingElementExtensions>
    <bindingExtensions>
      <add name="echoAdapterBindingV2" type="Microsoft.Adapters.Samples.EchoV2.EchoAdapterBindingCollectionElement,Microsoft.Adapters.Samples.EchoV2, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxxxxxxxxxxx" />
    </bindingExtensions>
  </extensions>
</system.serviceModel>

    - OR -

    If your machine.config contains a system.serviceModel section, determine which elements are missing and add them.

    Note
    Replace the version, culture, public key token and other assembly-specific information with your adapter's information.

    Copy Code
    <client>
  <endpoint binding="echoAdapterBindingV2" contract="IMetadataExchange"
    name="echov2" />
</client>
<extensions>
  <bindingElementExtensions>
    <add name="echoAdapterV2" type="Microsoft.Adapters.Samples.EchoV2.EchoAdapterBindingElementExtensionElement,Microsoft.Adapters.Samples.EchoV2, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxxxxxxxxxxx" />
  </bindingElementExtensions>
  <bindingExtensions>
    <add name="echoAdapterBindingV2" type="Microsoft.Adapters.Samples.EchoV2.EchoAdapterBindingCollectionElement,Microsoft.Adapters.Samples.EchoV2, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxxxxxxxxxxx" />
  </bindingExtensions>
</extensions>

  3. Save the machine.config file.

What Did I Just Do?

In this final step of the Echo Adapter tutorial, you added a strong name to the Echo Adapter, built and deployed the adapter, then modified Machine.config to include information about the adapter. At this point, the Echo Adapter should be available to consuming applications.

Next Steps

This tutorial is complete. If you want to test Echo Adapter functionality in a .NET project, see Tutorial 2: Consume the Echo Adapter from .NET.

See Also

Tasks

Step 8: Implement the Synchronous Inbound Handler for the Echo Adapter

Concepts

Tutorial 2: Consume the Echo Adapter from .NET

� 2014 Microsoft Corporation. All rights reserved.


Tutorial 2: Consume the Echo Adapter from .NET

This section gives the steps for consuming the inbound and outbound operations exposed by the Echo adapter from .NET. The Echo adapter was developed in Tutorial 1: Develop the Echo Adapter.

Note
The Echo Adapter and test code is available for download at http://go.microsoft.com/fwlink/?linkid=96184.

In This Section

  • Step 1: Test Outbound Handler of the Echo Adapter

  • Step 2: Test Inbound Handler of the Echo Adapter

See Also

Concepts

Tutorial 1: Develop the Echo Adapter
WCF LOB Adapter SDK Tutorials

� 2014 Microsoft Corporation. All rights reserved.


Step 1: Test Outbound Handler of the Echo Adapter
Step 1 of 2

Time to Complete: 15 minutes

In this step, you will test the three outbound operations provided by the Echo Adapter. You will do this using Visual Studio 2013, the Add Adapter Service Reference Visual Studio Plug-In and custom code.

Prerequisites

To complete this step, you must have completed Tutorial 1: Develop the Echo Adapter.

To create a Visual Studio project

  1. Start Visual Studio.

  2. In Visual Studio, on the File menu, point to New, and then click Project.

  3. In the New Project dialog box, do the following:

    Use this To do this

    Project types

    Click Visual C#.

    Templates

    Click Console Application.

    Name

    Type ConsumeEchoAdapter_Outbound.

    Location

    Type C:\Tutorials.

    Solution Name

    Type ConsumeEchoAdapter_Outbound.

  4. Click OK.

  5. In Visual Studio, on the File menu, click Save All.

To browse, search, and generate the WCF client

  1. In the Visual Studio Solution pane, right-click ConsumeEchoAdapter_Outbound project, then choose Add Adapter Service Reference to launch the Add Adapter Service Reference plug-in.

  2. In the Add Adapter Service Reference screen, choose a binding. This is done by choosing echoAdapterBindingV2.

  3. Next, configure the adapter and connection properties by clicking Configure…. This will bring up the Configure Adapter screen.

  4. In the Configure Adapter screen, select the URI Properties tab to configure connection properties. Notice that the custom Echo Adapter categories are shown — Connection and Format. Under the Format category, change EchoInUpperCase to True.

  5. In the Configure Adapter screen, select the Binding Properties tab to configure the adapter properties. Notice that the custom Echo Adapter categories Inbound and Misc are shown. Under the Misc category, change Count to 3.

  6. Click OK to close the Configure Adapter screen and return to the Add Adapter Service Reference screen.

  7. Next, click Connect to connect to the Echo Adapter (and hypothetical line-of-business system it supports). After a few moments, the connection status should change to Connected and the Category Tree (under Select a category) should be populated.

  8. In the Category Tree, click Main Category. This will populate the list of available categories and operations with three outbound operations. There will be no categories.

    Note
    The default contract type is Outbound. Category results will match this contract type.

  9. In the Available Categories and Operations, select all three operations. When there are a large number of operations, you might use search to narrow down the selection; in this case, there are only three. Click Add to make the selected operations part of the generated WCF interface.

  10. Click OK to generate the WCF interface. This will add an application configuration file (app.config) and a WCF client proxy (EchoAdapterBindingClient.cs) to the project.

  11. Click File on the Visual Studio menu and choose Save All.

To configure adapter authentication

  1. In Visual Studio Solution pane, double-click app.config.

  2. Find the address attribute in the endpoint element. It should look similar to the following:

    Copy Code
    <endpoint address="echov2://lobhostname/lobapplication?enableAuthentication=False&amp;echoInUpperCase=True"
    binding="echoAdapterBindingV2" bindingConfiguration="EchoAdapterBinding"
    contract="EchoOutboundContract" name="EchoAdapterBinding_EchoOutboundContract" />

    Change enableAuthentication from False to True as shown below. This will require the calling application to pass credentials to the adapter.

    Copy Code
    <endpoint address="echov2://lobhostname/lobapplication?enableAuthentication=True&amp;echoInUpperCase=True"
    binding="echoAdapterBindingV2" bindingConfiguration="EchoAdapterBinding"
    contract="EchoOutboundContract" name="EchoAdapterBinding_EchoOutboundContract" />

  3. Save the solution by clicking File on the Visual Studio menu and choosing Save All.

To create a sample XML file

  1. Start an instance of Notepad. Using the Start menu, click All Programs | Accessories and then choose Notepad.

  2. Copy the following sample data into the Notepad editor.

    Copy Code
    <?xml version="1.0" encoding="utf-16"?>
<ns0:greeting xmlns:ns0="echov2://microsoft.adapters.samples.echov2/PreDefinedTypes">
  <ns0:address>
    <ns0:street1>123 Microsoft Way</ns0:street1>
    <ns0:street2>Building # 4599</ns0:street2>
    <ns0:city>Redmond</ns0:city>
    <ns0:state>WA</ns0:state>
    <ns0:zip>98052</ns0:zip>
  </ns0:address>
  <ns0:greetingText>Welcome to Redmond!</ns0:greetingText>
</ns0:greeting>

  3. On the Notepad menu, click File and then choose Save As…. Type in "CustomGreetingInstance.xml" for the file name and choose Unicode for the encoding and then save it to the project directory or another suitable location. Note the full path and filename for later reference.

  4. Close the text editor when the file is successfully saved.

To test the Echo Adapter

  1. In Solution Explorer, double-click the Program.cs file.

  2. In the Visual Studio editor, inside the Main method, add the following line of code to create an instance of the generated WCF client.

    C# Copy Code
           EchoOutboundContractClient client = new EchoOutboundContractClient();

  3. Now add code that establishes credentials for the adapter. When authentication is enabled in the Echo Adapter, it will check for the existence of a user name but will not check the value.

    C# Copy Code
           // pass client credentials
       client.ClientCredentials.UserName.UserName = "username";

  4. Continue by adding code to invoke the EchoStrings operation.

    C# Copy Code
           // Invoke EchoStrings()
       Console.WriteLine("Invoking EchoStrings() method against the adapter...");
       string[] response = client.EchoStrings("Bonjour!");
       foreach (string data in response)
       {
           Console.WriteLine(data);
       }

  5. Continue by adding code to invoke the EchoGreetings operation.

    C# Copy Code
           // Invoke EchoGreetings()
       Console.WriteLine("\nInvoking EchoGreetings() method against the adapter...");
       microsoft.adapters.samples.echov2.Types.Greeting greeting = new microsoft.adapters.samples.echov2.Types.Greeting();
       greeting.id = Guid.NewGuid();
       greeting.sentDateTime = DateTime.Now;
       greeting.greetingText = "Hello World!";
       greeting.name = new microsoft.adapters.samples.echov2.Types.Name();
       greeting.name.salutation = microsoft.adapters.samples.echov2.Types.Salutation.Miss;
       greeting.name.firstName = "Jane";
       greeting.name.middleName = "Z.";
       greeting.name.lastName = "Smith";
       microsoft.adapters.samples.echov2.Types.Greeting[] greetingArray = client.EchoGreetings(greeting);
       foreach (microsoft.adapters.samples.echov2.Types.Greeting data in greetingArray)
       {
           Console.WriteLine(data.id + " " + data.sentDateTime + " " + data.greetingText + " " + data.name.firstName );
       }

  6. Continue by adding code to invoke the EchoCustomGreetingsFromFile operation.

    C# Copy Code
           // Invoke EchoCustomGreetingFromFile()
       Console.WriteLine("\nInvoking EchoCustomGreetingFromFile() method against the adapter ...");
       // Copy the sample data from CustomGreeting-instance.xml file and place in appropriate folder
       // as specified in the operation parameter
       microsoft.adapters.samples.echov2.PreDefinedTypes.CustomGreeting
       // change the Uri to point to the greeting instance xml file you created
       customGreeting = client.EchoCustomGreetingFromFile(new Uri(@"c:\CustomGreetingInstance.xml"));
       Console.WriteLine(customGreeting.greetingText + " " + customGreeting.address.city);
       client.Close();
       Console.ReadLine();

  7. In the EchoCustomGreetingsFromFile test code, make sure the custom greeting uses the file you created in a previous procedure. Change the code to reflect the location of your file.

  8. In Visual Studio 2013, on the File menu, click Save All.

  9. Run the application. You should see output similar to the following:

    Invoking EchoStrings() method against the adapter...

    Bonjour!

    Bonjour!

    Bonjour!

    Bonjour!

    Bonjour!

    Invoking EchoGreetings() method against the adapter...

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    179665bb-db21-42ac-810e-77ebfa99d460 9/13/2007 3:18:07 PM Hello World! Jane

    Invoking EchoCustomGreetingFromFile() method against the adapter ...

    Welcome to Redmond! Redmond

  10. Press the Enter key to stop the program.

What Did I Just Do?

In this step, you created a test application for the three outbound operations exposed by the Echo Adapter developed in Tutorial 1. To do this, you created a Visual Studio project, generated a WCF Service, and provided code to host the WCF Service. Finally, you ran the test application.

Next Steps

To test the Inbound operation, proceed to Step 2: Test Inbound Handler of the Echo Adapter.

See Also

Tasks

Step 2: Test Inbound Handler of the Echo Adapter

Concepts

Tutorial 2: Consume the Echo Adapter from .NET

Other Resources

IOutboundHandler

� 2014 Microsoft Corporation. All rights reserved.


Step 2: Test Inbound Handler of the Echo Adapter
Step 2 of 2

Time to complete: 10 minutes

In this step, you will test the inbound service provided by the Echo Adapter. You will do this using Visual Studio 2013, the Add Adapter Service Reference Visual Studio Plug-In and custom code.

Prerequisites

To complete this step, you must have completed Tutorial 1: Develop the Echo Adapter. This step can be completed independent of Step 1: Test Outbound Handler of the Echo Adapter.

To create a Visual Studio project

  1. Start Visual Studio.

  2. In Visual Studio, on the File menu, point to New, and then click Project.

  3. In the New Project dialog box, do the following:

    Use this To do this

    Project types

    Click Visual C#.

    Templates

    Click Console Application.

    Name

    Type ConsumeEchoAdapter_Inbound.

    Location

    Type C:\Tutorials.

    Solution Name

    Type ConsumeEchoAdapter_Inbound.

  4. Click OK.

  5. In Visual Studio, on the File menu, click Save All.

To browse, search, and generate the WCF service

  1. In the Visual Studio Solution pane, right-click ConsumeEchoAdapter_Inbound project then choose Add Adapter Service Reference to launch the Add Adapter Service Reference plug-in.

  2. In the Add Adapter Service Reference screen, choose a binding. This is done by choosing echoAdapterBindingV2.

  3. Next, configure the adapter and connection properties by clicking Configure. This will bring up the Configure Adapter screen.

  4. In the Configure Adapter screen, select the Binding Properties tab to configure the adapter properties. Notice that the custom Echo Adapter categories Inbound and Misc are shown. Under the Misc category, click InboundFileSystemWatcherFolder and then enter the directory you want to monitor.

  5. Click OK to close the Configure Adapter screen and return to the Add Adapter Service Reference screen.

  6. Next, click Connect to connect to the Echo Adapter (and hypothetical line-of-business system it supports). After a few moments, the connection status should change to Connected and the Category Tree (under Select a category) should be populated.

  7. To view available inbound operations, change the Service contract type to Service (Inbound operations).

  8. In the Category Tree, click Main Category. This will populate the list of available categories and operations with a single inbound operation. There will be no categories.

  9. In the Available Categories and Operations, select the OnReceiveEcho operation. Click Add to make the selected operations part of the generated WCF interface.

  10. Click OK to generate the WCF interface. This will add an application configuration file (app.config), a WCF interface (EchoAdapterBindingInterface.cs) and a WCF service (EchoAdapterBindingService.cs) to the project.

  11. Click File on the Visual Studio menu and choose Save All.

To test the Echo Adapter

  1. In Solution Explorer, double-click the EchoAdapterBindingService.cs file.

  2. In the Visual Studio editor, inside the OnReceiveEcho method, replace the existing implementation with the following:

    C# Copy Code
       System.Console.WriteLine("path = " + path + ", len = " + length);

  3. In Solution Explorer, double-click the Program.cs file.

  4. In the Visual Studio editor, inside the Main method, add the following code to host the WCF service.

    C# Copy Code
        try
    {
        // Create a ServiceHost for the EchoServiceImpl type
        // and use the base address from app.config
        System.ServiceModel.ServiceHost host = new System.ServiceModel.ServiceHost(typeof(EchoAdapterBindingNamespace.EchoAdapterBindingService));

        // Open the ServiceHost to start listening for messages
        host.Open();

        Console.WriteLine("The service is ready.");
        Console.WriteLine("Press <ENTER> to terminate service.");
        Console.ReadLine();

        // Close the ServiceHost
        host.Close();
    }
    catch (TimeoutException ex)
    {
        Console.WriteLine(ex.Message);
        Console.WriteLine();
    }
    catch (System.ServiceModel.CommunicationException ex)
    {
        Console.WriteLine(ex.Message);
        Console.WriteLine();
    }

  5. In Visual Studio, on the File menu, click Save All.

  6. Press F5 to start the sample.

  7. Drop a file with the "txt" extension into the directory specified earlier in this tutorial. You should see information similar to the following in the program output window:

    The service is ready.

    Press <ENTER> to terminate service.

    path = file:///C:/Tutorial/InboundTest/InboundTest.txt, len = 229179

  8. Press the Enter key to stop the service.

What Did I Just Do?

In this step, you created a test application for the inbound operation exposed by the Echo Adapter developed in Tutorial 1: Develop the Echo Adapter. To do this, you created a Visual Studio project, generated a WCF Service, and provided code to host the WCF Service. Finally, you ran the test application.

Next Steps

This is the last step of the tutorial. For more information about Inbound operations, see IInboundHandler. To see an example SDK that demonstrates how to host a WCF Service that requires authentication, download the echo adapter and test code at http://go.microsoft.com/fwlink/?LinkID=96184.

See Also

Concepts

Tutorial 2: Consume the Echo Adapter from .NET
Tutorial 1: Develop the Echo Adapter

Other Resources

IInboundHandler

� 2014 Microsoft Corporation. All rights reserved.


Tutorial 3: Hosting the Echo Adapter in IIS

This tutorial provides step-by-step instructions for hosting the Echo Adapter developed in Tutorial 1: Develop the Echo Adapter. More specifically, the steps show how you can host the adapter in Internet Information Services (IIS) by using the Adapter Service Development Wizard. You will also use the Business Data Catalog feature of Microsoft Office SharePoint Server 2007 to call the EchoGreetings operation of the IIS-hosted adapter, and then display the results in a Web Part.

Tip
The Echo Adapter, test code, and installation script are available for download at http://go.microsoft.com/fwlink/?linkid=96184.

In This Section

  • Step 1: Use the Adapter Service Development Wizard to Create the Web Project

  • Step 2: Deploy the Web Project

  • Step 3: Create an Application Definition File

  • Step 4: Create a Sharepoint Application to Access the Adapter

See Also

Concepts

Tutorial 1: Develop the Echo Adapter
WCF LOB Adapter SDK Tutorials

� 2014 Microsoft Corporation. All rights reserved.


Step 1: Use the Adapter Service Development Wizard to Create the Web Project
Step 1 of 4

Time to complete: 10 minutes

In this step, you create a project using Visual Studio and the Adapter Service Development Wizard. The Adapter Service Development Wizard collects information about the adapter, operations, and endpoint configurations, and generates a Web project that can then be deployed to IIS.

Prerequisites

You must build and deploy the Echo sample described in Tutorial 1: Develop the Echo Adapter before beginning this tutorial.

To start the Adapter Service Development Wizard

  1. Start Visual Studio and then on the File menu, point to New, and then click Web Site.

  2. In the New Web Site dialog box, perform the following actions:

    Use this To do this

    Language

    Click Visual C#.

    Templates

    Click WCF Adapter Service.

    Location

    Select File System, and then type C:\Tutorials\EchoWeb as the path.

  3. Click OK.

  4. On the Welcome page, click Next.

To select the adapter and URI

  1. On the Choose the operations to generate a service contract page, select echoAdapterBindingV2 from the Select a binding drop-down list, and then click Configure.

  2. On the Security tab of the Configure Adapter dialog box, set Client Credential type to Username, and then set the User name credentials as follows:

    Property Value

    User name

    username

    Password

    password

    Note
    The user name and password entered here are only used to connect to the adapter while performing the steps in the wizard, and are not preserved after the wizard completes.

  3. Click the URI Properties tab, and then set the properties as follows:

    Property Value

    Application

    LobApplication

    EnableAuthentication

    True

    Hostname

    lobhostname

    EchoInUpperCase

    False

    Note
    The URI properties selected here will be used to create the <client><endpoint> elements in the web.config file.

  4. Click the Binding Properties tab. Note the default values, and then click OK.

    Note
    The binding values will be used to generate the <bindings><echoAdapterBindingV2> elements in the web.config file.

To select the contract and operations

  1. On the Choose the operations to generate a service contract page, click Connect.

  2. In the Select a category tree, select Main Category. This populates the Available categories and operations list.

    Note
    You can also enter a search term in the Search in category field to find any operations that contain the search term.

  3. In the Available categories and operations list, select EchoGreetings and click Add. This moves the EchoGreetings operation to the Added categories and operations list. The operations selected here will be exposed to client applications through the client proxy code generated by the wizard.

    Select Contract and Operations

  4. Click Next.

To configure service and endpoint behavior

  1. On the Configure service and endpoint behaviors page, enter the following values for Service Behavior Configuration:

    Property Value

    EnableMetadataExchange

    True

    IncludeExceptionDetailsinFault

    True

    Name

    customServiceBehavior

    UseServiceCertificate

    False

    These values are used to populate the <serviceBehaviors>.

  2. Enter the following values for Endpoint Behavior Configuration:

    Property Value

    Name

    customEndpointBehavior

    AuthenticationType

    HTTPUsernamePassword

    UsernameHeader

    MyUserHeader

    PasswordHeader

    MyPassHeader

    These values will be used to specify the adapterSecurityBridgeType in the <endpointBehaviors element in web.confg.

  3. Click Next

To configure the binding

  1. On the Configure the service endpoint binding and address page, select the BindingConfiguration entry in Configure the address and binding for the contract, and then click the ellipsis (…) button.

  2. In the Customize Binding dialog box, set Mode to TransportWithMessageCredential, and then click OK.

  3. Click Apply, and then click Next.

  4. On the Summary page, review the contracts and operations selected for this project, and then click Finish. You will be presented with the EchoWeb solution, which contains the project files created by the Adapter Service Development Wizard

What did I just do?

In this step, you used the Adapter Service Development Wizard to generate a Web project that, when published to IIS, will host the Echo Adapter developed in Tutorial 1: Develop the Echo Adapter in the IIS process. The resulting Web project allows Web Services and WCF clients to access the selected operations.

Next Steps

To build and deploy the Web project, proceed to Step 2: Deploy the Web Project

See Also

Concepts

Tutorial 1: Develop the Echo Adapter

� 2014 Microsoft Corporation. All rights reserved.


Step 2: Deploy the Web Project
Step 2 of 4

Time to complete: 5 minutes

In this step you will publish the Web project generated in Step 1: Use the Adapter Service Development Wizard to Create the Web Project to Internet Information Services (IIS).

Prerequisites

To complete this step, you should have completed Step 1: Use the Adapter Service Development Wizard to Create the Web Project. Your Web server must also have an SSL certificate installed to enable HTTPS communication.

To compile and deploy the Web project

  1. In Visual Studio 2013, load the EchoWeb project created previously.

  2. Open a Visual Studio 2013 command prompt.

  3. At the command prompt, from the C:\tutorials\echoweb folder, type the following command, and then press ENTER:

    sn /k EchoWebKey.snk

    A confirmation message, Key pair written to EchoWebKey.snk, displays on the command line.

  4. Close the command prompt.

  5. In Solution Explorer, right click the EchoWeb project, and then select Publish Web Site.

  6. In the Publish Web Site dialog box, for Target location, enter http://machinename/EchoWeb. Select Allow this precompiled site to be updatable, Use fixed naming and single page assemblies, and Enable strong naming on precompiled assemblies. In the Key file location field, click the ellipsis (…) button, select the EchoWebKey.snk file created previously, and then click OK.

  7. To verify that the Web site was correctly created, start Internet Explorer, enter http://localhost/EchoWeb/EchoOutboundContract.svc in the address bar, and then press ENTER. A Web page that describes the EchoOutboundContractClient should appear.

What did I just do?

You have just published your Web project to IIS.

Next Steps

Now that you have compiled and deployed the project, you can proceed to Step 3: Create an Application Definition File

See Also

Tasks

Tutorial 3: Hosting the Echo Adapter in IIS

� 2014 Microsoft Corporation. All rights reserved.


Step 3: Create an Application Definition File
Step 3 of 4

Time to complete: 15 minutes

The Business Data Catalog feature in Microsoft Office SharePoint Server exposes and incorporates data from line-of-business (LOB) applications into portals. To incorporate this data into your portal site, you must build an application definition file that Microsoft Office SharePoint Server can consume.

In this step you use the Business Data Catalog Definition Editor tool, available with the Microsoft Office SharePoint Server 2007 SDK, to create an application definition file for the Business Data Catalog. This definition file describes the EchoGreetings method of the Echo adapter, and will be used in later steps to enable SharePoint to communicate with the adapter.

The purpose of the Microsoft Office SharePoint Server application that you are creating is to allow you to invoke the EchoGreetings method of the Echo adapter and return the response using a SharePoint Web Part.

Prerequisites

You should have completed Step 2: Deploy the Web Project. You must also have access to the Business Data Catalog Definition Editor, which is installed as part of the Microsoft Office SharePoint Server 2007 SDK. You can download the SDK from http://go.microsoft.com/fwlink/?LinkId=104130.

Creating an Application Definition File

This topic provides step-by-step instructions to create an application definition file for connecting the SharePoint Business Data Catalog with the WCF adapter hosted in IIS.

To connect to the WCF adapter service and create entities

  1. From the Start menu, point to All Programs, and then click Microsoft Business Data Catalog Definition Editor.

  2. On the toolbar, click Add LOB System.

  3. In the Add LOB System window, click Connect to Webservice.

  4. In the URL box, type the URL for the WCF service. The URL must be in the following format: https://machinename/EchoWeb/EchoOutboundContract.svc?wsdl

  5. Click Connect.

  6. To see the available operations, click the Add Web Method tab. You should see the EchoGreetings method. Drag the method to the Design Surface.

  7. Click OK.

  8. In the Enter the name for the LOB System dialog box, type a name in the LOB System Name box. For this example, enter EchoWSLOB, and then click OK.

  9. Expand the EchoWSLob node, and then expand the Entities node. Select Entity0 and in the Properties pane type EchoGreetings as the value for the Name property.

Specify User Name and Password Headers for the Method

When calling a WCF adapter, you may have to provide user credentials that will be passed to the LOB system. In Step 1: Use the Adapter Service Development Wizard to Create the Web Project, you configured the Echo adapter to require that user name and password information be provided in the MyUserHeader and MyPassHeader fields. You must now use the same field names for this application definition file.

To specify user name and password headers

  1. In the Metadata Objects pane, expand the EchoGreetings node, and then expand the Methods node.

  2. Click the EchoGreetings node and, in the Properties pane, click the ellipsis (…) button in the Properties field.

  3. In the PropertyView Collection Editor window, click Add, and in the Name field of the Property pane, type HttpHeaderUserName.

    Specify Username Header Fields

  4. In the PropertyValuefield, type MyUserHeader.

  5. Click Add, and in the Property pane type HttpHeaderPassword for the Name field, then type MyPassHeader for the PropertyValue field.

  6. Click OK.

Set up Single Sign-On for Connecting to the Echo Adapter

SharePoint uses information from Single Sign-On to populate the MyUserHeader and MyPassHeader with authentication values. To link this application definition file to Single Sign-On, you must provide a SecondarySsoApplicationId.

To set the SecondarySsoApplicationId property

  1. In the Metadata Objects pane, expand the EchoWSLOB node, and then expand the Instances node.

  2. Click EchoWSLOB_Instance, and in the Properties pane, click the ellipsis (…)button in the Properties field.

  3. In the PropertyView Collection Editor window, click Add, and in the Property pane, type SecondarySsoApplicationId in the Name field.

  4. In the PropertyValue field, type EchoSSO.

    Set the SecondarySsoApplicationId

  5. Click OK.

Create Input Filters and Default Values

The application definition file must be able to accept user input that can be passed to a Web service. To accomplish this, you must perform the following set of tasks:

To create a filter, and map it to the greeting parameter

  1. In the Metadata Objects pane, expand the EchoWSLOB node, and then expand the Methods node.

  2. Expand the EchoGreetings method, right-click Filters, and then click Add Filter.

  3. In the Properties pane, type Greeting in the Name field.

    Set the Filter Name

  4. In the Metadata Objects pane, expand the EchoWSLOB node, and then expand the Methods node

  5. Expand the EchoGreetings method, and then expand the Parameters node.

  6. Expand the greeting node, and then expand the second greeting node.

  7. Click the greetingText node, and in the Properties pane, select Greeting from the FilterDescriptor list.

To create a Finder method instance for the EchoGreetings method

  1. In the Metadata Objects pane, expand the EchoWSLOB node, and then expand the Methods node.

  2. Expand the EchoGreetings method, right-click Instances, and then click Add Method Instance to open the Create Method Instance window.

  3. In the Create Method Instance window, click Finder for Method Instance Type, and then select Return for Return TypeDescriptor.

    Create the Method Instance

  4. Click OK.

  5. In the Properties pane, type EchoGreetings_Instance in the Name field.

To set default parameters

  1. In the Metadata Objects pane, expand the EchoWSLOB node, and then expand the Methods node.

  2. Expand the EchoGreetings method, and then expand the Instances node.

  3. Select the EchoGreetings_Instance method instance, and in the Properties pane, click the ellipsis button (…) in the DefaultValues field.

  4. In the Edit window, expand the greeting node, and then expand the second greeting node. Expand the name node, until the tree structure is fully displayed.

  5. In the Edit window, set the field values as follows:

    Set this To this

    id

    A GUID value, for example 27829ed4-583a-40c4-ad87-fb8cdd9dc98d.

    sentDateTime

    The current date and time, for example 05/15/08 9:12 AM

    firstName

    First

    middleName

    Middle

    lastName

    Last

  6. Click Close.

To export the application definition file

  1. In the Metadata Objects pane, right-click the EchoWSLOB node, and then click Export.

  2. Save the file as EchoWS.xml.

What did I just do?

You have used the Business Data Catalog Definition Editor tool to create an application definition file that can be imported into Microsoft Office SharePoint Server 2007 to enable connectivity with your adapter that is hosted in IIS.

Next Steps

You must now create a SharePoint application based on the application definition file created in this step. See Step 4: Create a Sharepoint Application to Access the Adapter for instructions.

See Also

Tasks

Tutorial 3: Hosting the Echo Adapter in IIS

� 2014 Microsoft Corporation. All rights reserved.


Step 4: Create a Sharepoint Application to Access the Adapter
Step 4 of 4

Time to complete: 15 minutes

In this step you take the application definition file that you created using the Business Data Catalog Definition Editor tool, and import it into Microsoft Office SharePoint Server.

Prerequisites

  • You should have created an application file as described in Step 3: Create an Application Definition File.

  • The Microsoft Single Sign-On service must be running.

How to Create a SharePoint Application

Creating a SharePoint application involves the following steps:

  • Create a Single Sign-On (SSO) application in SharePoint.

  • Create a Shared Services Provider, and import the application definition file.

  • Create a Web Part page, and add Web Parts.

This topic demonstrates how to perform these steps.

Creating an SSO Application in SharePoint

To pass user credentials to the Echo adapter from a SharePoint application, you must set up an SSO application that maps to a user account or group.

Manage server settings for Single Sign-On

  1. Start SharePoint 3.0 Central Administration. On the Start menu, point to All Programs, point to Microsoft Office Server, and then click SharePoint 3.0 Central Administration.

  2. On the top navigation bar, click Operations.

  3. On the Operations page, in the Security Configuration section, click Manage settings for single sign-on.

  4. On the Manage Settings for Single Sign-On page, in the Server Settings section, click Manage Server Settings.

  5. Ensure that the information on this page is correct for your Single Sign-On installation. For more information about these operations, see “Configure single sign-on (Office SharePoint Server)” at http://go.microsoft.com/fwlink/?LinkId=105291.

Manage settings for enterprise application definitions

  1. In SharePoint Central Administration, on the top navigation bar, click Operations.

  2. On the Operations page, in the Security Configuration section, click Manage Settings for single sign-on.

  3. On the Manage Settings for Single Sign-On page, in the Enterprise Application Definition Settings section, click Manage Settings for enterprise application definitions.

  4. On the Manage Enterprise Application Definitions page, click New Item.

  5. On the Create Enterprise Application Definitions Page, set the Display name field to EchoSSO, and then set the Application name field to EchoSSO. This value should match the SecondarySsoApplicationId you specified in Step 3: Create an Application Definition File.

  6. In the Contact e-mail address field, enter your e-mail address, and then click OK.

Manage account information for enterprise application definitions

  1. In SharePoint Central Administration, on the top navigation bar, click Operations.

  2. On the Operations page, in the Security Configuration Section, click Manage settings for single sign-on.

  3. On the Manage Settings for Single Sign-On page, in the Enterprise Application Definition Settings section, click Manage account information for enterprise application definitions.

  4. On the Manage Account Information for an Enterprise Application Definition, select EchoSSO from the Enterprise application definition list.

  5. In the Group account name field, type the Windows group that will be used to secure this application definition. For example, DOMAIN\Domain Users.

  6. Click Set.

  7. On the Provide EchoSSO Account Information page, in the Username field type testuser, and then in the Password field type testpassword.

  8. Click OK, and then click Done.

Creating a Shared Services Provider and importing the application definition file

A Shared Services Provider (SSP) is a logical grouping of shared services and their supporting resources. You can create an SSP by using the SharePoint Central Administration Console. This example will work in any SSP. For more information about creating an SSP, see “Chapter overview: Create and Configure Shared Services Providers” at http://go.microsoft.com/fwlink/?LinkId=105119.

To import the application definition file

  1. Start SharePoint 3.0 Central Administration. On the Start menu, point to All Programs, point to Microsoft Office Server, and then click SharePoint 3.0 Central Administration.

  2. In the left navigation pane, click the name of the SSP to which you want to import the application definition.

  3. In the Business Data Catalog section, click Import application definition.

  4. On the Import Application Definition page, click Browse, and then select the EchoWS.xml file.

  5. Click Import, and then click OK.

Creating Web Parts

You must now create Web Parts in your SharePoint site to use the method instance created in the Business Data Catalog Definition Editor. Web Parts are reusable components that can contain any kind of Web-based information, including analytical, collaborative, and database information.

To create a Web Part page

  1. Start SharePoint 3.0 Central Administration. On the Start menu, point to All Programs, point to Microsoft Office Server, and then click SharePoint 3.0 Central Administration.

  2. In the left navigation pane, click the name of the SSP in which you imported the application definition file.

  3. On the Shared Services Administration page, in the upper-right corner, click Site Actions, and then click Create.

    Create Site Actions

  4. On the Create page, in the Web Pages section, click Web Part Page.

  5. On the New Web Part page, in the Name field, type EchoPart, and then select Full Page, Vertical from the Chose a Layout Template list.

  6. Click Create.

To add a Business Data Web Part

  1. Click Add a Web Part.

  2. In the Add Web Parts dialog box, select Business Data List, and then click Add.

    Business Data List

  3. Click Open the tool pane.

  4. The Business Data List tool pane opens in the right pane. In the Business Data List section, for the Type field, click the Browse button.

    Select the Type

  5. In the Business Data Type Picker dialog box, select the EchoWSLob_Instance application, and then click OK.

  6. On the Business Data List tool pane, click OK.

  7. You are presented with a field that allows you to enter a greeting value to pass to the EchoGreetings method. Enter data in the greeting field and click Retrieve Data. This invokes the EchoGreetings method of the Echo adapter hosted in IIS and returns a response.

    Note
    The name column does not contain the user information, but only displays BDC.Name. This occurs because the BDC expects only a simple record structure, and does not display the complex structure represented by the name field.

  8. Click Exit Edit Mode from the upper corner of the page.

What did I just do?

You have used the SharePoint 3.0 Central Administration to import an application definition, and create Web Parts that use this definition to invoke the EchoGreetings operation of the Echo adapter.

Next Steps

This tutorial is complete. For more information using the Business Data Catalog, see “Business Data Catalog” at http://go.microsoft.com/fwlink/?LinkId=119921.

See Also

Tasks

Tutorial 3: Hosting the Echo Adapter in IIS

� 2014 Microsoft Corporation. All rights reserved.


Planning and Architecture

This section contains information to help you plan your adapter and understand the WCF LOB Adapter SDK.

In This Section

  • Selecting the Appropriate Framework

  • Planning Your Adapter Design

See Also

Concepts

Microsoft Windows Communication Foundation Line of Business Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Selecting the Appropriate Framework

The WCF LOB Adapter SDK and WCF each provide a set of APIs that can be used to expose application functionality to consuming applications on the same computer or across a network. To choose the most appropriate framework, you must consider the properties of the target system application you are exposing as well as the business requirements for the exposed functionality. This topic provides guidelines that you can use to choose the appropriate framework.

When to Write an Adapter

Consider writing an adapter using the WCF LOB Adapter SDK when:

  • The target system is an existing, non-Web services-enabled system

  • The target system is dynamic and can be enhanced with new operations

  • The target system has a large amount of metadata

  • There is a large, diverse number of users for the target system's data

  • Consuming applications need rich application metadata discovery functionality

For example, if the target system contains hundreds of operations for managing health care claims, and the operations are dynamic (meaning users can add new operations that perform additional tasks), it makes sense to expose this functionality using the WCF LOB Adapter SDK. This will ensure that new operations are discoverable by applications using the adapter. With WCF, you would have to modify the service contract because it is static.

When to Write a Service

Use the WCF Service Model to create a service when:

  • The target system is static and has a fixed set of operations

  • The target system has little or no metadata

  • Service developers have detailed knowledge of the application to be exposed

  • A brand new application is being exposed

  • You are creating generic transport adapters

For example, if the target system contains 20 operations for managing sports teams, you can expose the operations as a static contract using WCF. By doing so, you avoid implementing unnecessary metadata features and you can potentially minimize development time.

When to Write a Channel

Use the WCF Channel Model to create a channel when:

  • Creating a wire protocol. Examples of wire protocols include WS-ReliableMessaging Protocol.

  • Send/receive WCF messages over a transport other than ones that are included in WCF (TCP, HTTP, Named Pipes, MSMQ and PeerChannel). For example, you can write a UDP transport, TIBCO, or a Java Messaging Service (JMS) transport.

  • Integrating with a system that is not exposed as a Web service. In this case your transport acts as an adapter adapting WCF messages to the existing system's message format or API allowing a WCF client to talk directly to the existing system. An example of this is the Web Services Enhancement (WSE) 3.0 TCP transport.

See Also

Concepts

Planning and Architecture
Understanding the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


Planning Your Adapter Design

Planning is an important part of any development effort, including adapters developed with the WCF LOB Adapter SDK. Failure to adequately plan strategies for interacting with the line-of-business system and the different implementation details involved when developing an adapter could cause your adapter to behave unexpectedly, to lack certain key features provided by the API and expected by the user, or to require frequent update and repair.

This section contains the information needed to design your adapter. Using this information, you can plan a design that meets the needs of your users.

In This Section

  • Understanding the LOB System

  • Supported Message Exchange Patterns

  • Selecting a URI Scheme and Addressing Format

  • Understanding Security

  • Understanding Transactions

  • Understanding Metadata Search and Browse

See Also

Concepts

Planning and Architecture

� 2014 Microsoft Corporation. All rights reserved.


Understanding the LOB System

Before developing your adapter using the WCF LOB Adapter SDK, you must have a thorough understanding of the target line-of-business system. If you do not understand the functionality provided by the line-of-business system, how it is exposed, and the different level of support provided for security, transactions, and other features, your adapter may not provide the features required by adapter consumers. This section describes the areas you must understand to effectively design your adapter.

The Path to Understanding

The purpose of an adapter is to expose data and operations from a line-of-business system in a consistent, accessible manner according to the rules imposed by the adapter specification and/or adapter API. To know which operations and data to expose, you must understand what the system does and how it exposes its data and operations. In particular, you must think about the following design issues:

  • Connection lifecycle. How are connections opened and closed? How are open connections maintained? Are there special requirements for reusing a connection? For more information about connections, see IConnection.

  • The operation and type metadata exposed by the system. Does the line-of-business system support operation search and browse and easy access to metadata, or must you develop support code to provide this functionality? For example, in SQL Server operations are objects such as stored procedures. Type metadata about columns, tables, and other objects are easy to retrieve. Legacy line-of-business systems may be more difficult to work with.

  • How operations and data are exposed by the system. How is the API exposed? Does the API support blocking (synchronous) and non-blocking (asynchronous) calls? Are callbacks supported? Will you interface at the API or protocol level?

  • Support for security, transactions, and reliable messaging. If the API supports any of these features, you will likely want to expose them to the adapter consumer. For example, SQL Server has security and transaction support although reliable messaging isn't practical (but would be with MSMQ or some other queuing system).

  • What functionality and usage scenarios are important? Don't limit your understanding to the purely technical; discuss and capture business requirements with experienced users. Are there any unique constraints imposed on some operations? Are there operations that are obscure yet useful? Is some functionality rarely used?

To discover this information, you should consult the user and technical documentation for the target line-of-business system. If the documentation is sparse or missing, you may also be able to learn about the technical aspects of the system by looking for online support forums, online newsgroups, blogs, or by examining the installation files for implementation details. If you have access to the line-of-business developers or code files, you may be able to discover the information you need including connection semantics, support for security, and how operations are searched and invoked.

See Also

Concepts

Planning Your Adapter Design
WCF LOB Adapter SDK Overview
Selecting the Appropriate Framework

� 2014 Microsoft Corporation. All rights reserved.


Supported Message Exchange Patterns

The WCF LOB Adapter SDK supports several of the messaging patterns supported by the underlying WCF including request-reply, and one-way communication. Different transports support different messaging patterns, and thus affect the types of interactions that they support.

The patterns listed in the following table are handled by the WCF LOB Adapter SDK.

Pattern | Description
One-way inbound | Inbound messages are received from the line-of-business system but no response is expected from the adapter.
Request-response inbound | Inbound messages are received from the line-of-business system which expects an appropriate response from the adapter.
One-way outbound | Outbound messages are sent to the line-of-business system but no response is expected from the adapter.
Request-response outbound | Outbound messages are sent to the line-of-business system with a response expected from the adapter.
Sessionful inbound | Inbound messages are received from the line-of-business system within a unique session. No response is expected by the line-of-business system from the adapter.
Sessionful outbound | Outbound messages are sent to the line-of-business system within a unique session. No response is expected from the line-of-business system by the adapter.

Your choice of message pattern will be guided by the functionality of the target application.

Planning for Sessions

A messaging pattern may use a session when it wants to ensure that all messages exchanged between the adapter and the line-of-business system must be part of the same conversation. Typically sessions are used when delivery guarantee is needed, but they can also be used to support other requirements that an adapter developer may have for message exchange.

The WCF LOB Adapter SDK relies on the WCF for session support. For more information about sessions, see "Sessions, Instancing, and Concurrency" at http://go.microsoft.com/fwlink/?LinkId=82970.

See Also

Concepts

Planning Your Adapter Design

� 2014 Microsoft Corporation. All rights reserved.


Selecting a URI Scheme and Addressing Format

A Uniform Resource Identifier (URI) uniquely identifies resources like a Web service or, in the case of an adapter developed with the WCF LOB Adapter SDK, the system to connect to as well as the action to perform. This section provides a recommendation on how to construct a URI to uniquely describe the endpoint address and the action for your adapter.

Anatomy of a URI

A URI consists of the following three components:

  • Scheme name is the lead part of the URI string and is the first level of the naming structure; examples include http, urn, and contoso.

  • Hierarchical part consists of information that is usually hierarchical and can contain optional authority, hostname, and port information. Examples include www.microsoft.com and UserName=User@microsoft.com:4099.

  • Query contains optional information marked with a question mark (?) and typically grouped as key/value pairs separated by an ampersand (&). For example, contoso://microsoft.com/functions?name=Find.

  • Fragment is used to store extra identifying information that may be needed by the adapter. The fragment is separated by a hash (#); for example, contoso://microsoft.com/functions?name=Find#public.

You might not use all of the features provided by the URI syntax.

Designing the URI

As an adapter developer, you will have to devise an appropriate URI for your target line-of-business system. When designing your URI, it is important to make it unique and meaningful.

A unique URI is one that does not conflict with existing URIs within an organization and across other businesses and the Internet. For example, choosing a scheme name like "http" or "afs" that may be currently recognized or already in wide use could cause connection or operational problems because requests might be routed to a different system and not to your adapter.

Another important aspect of URI design is making it meaningful to the developer audience who will be consuming your adapter. For example, if you are writing an adapter for a medical claims processing system, you could design a URI scheme that includes your company name, the target claims processing system name, and system version: northwind.contoso.cps.v1.0://.

Connecting to the Target System

Connection strings have the following syntax:

<scheme>://[userinfo "@"]<LOB Connection String>

For example, you could connect to the contoso catalog ordering system (a sample line of business application) using the following:

northwind.contoso.v1.0://<servername>?Catalog=Contoso&Integrated Security=True

You can also provide optional authority information in the URI including user name and password and other important credentials. However, this can present a security risk.

Caution
Do not pass user credentials and other sensitive information in the URI. This information could be intercepted and viewed by unauthorized users.

See Also

Concepts

Planning Your Adapter Design

� 2014 Microsoft Corporation. All rights reserved.


Understanding Security

The WCF LOB Adapter SDK extends the WCF channel architecture and relies on the messaging infrastructure and the API that it provides. A WCF LOB adapter needs to establish a connection to target systems, and hence it is necessary to configure the adapter with authentication and other security information required to make the target system connections.

WCF is a distributed programming platform based on SOAP messages that can travel through many different nodes, SOAP intermediaries, firewalls, and potentially the Internet en-route from the line-of-business system to the adapter and on to the client. This could present a number of different security threats to your adapter and deployment scenario.

Security plays a major part in any enterprise architecture solution. You can leverage the confidentiality, integrity, authentication, and authorization features provided in the WCF security model to help secure the adapter from security threats. You must also consider the transport and message-level security between the adapter and the target system to protect the communication between these two entities. Even though WCF provides a rich set of WS-* specifications, implementation of these advanced security standards in your adapter will depend on the capabilities provided by the line-of-business system.

For more information about WCF security including an overview, concepts, common scenarios, and best practices, see Windows Communication Foundation Security (http://go.microsoft.com/fwlink/?LinkId=82969).

See Also

Concepts

Planning Your Adapter Design

� 2014 Microsoft Corporation. All rights reserved.


Understanding Transactions

The WCF LOB Adapter SDK supports transactions by relying on functionality exposed by the WCF. By using the API exposed by WCF, your adapter can support transactions and operations that are:

  • Atomic, ensuring that either all pending updates are committed or none are committed and are rolled back to their previous state.

  • Consistent, ensuring that changes made are from one consistent state to another.

  • Isolated, preventing a transaction to access uncommitted changes in other pending transactions.

  • Durable, meaning that once committed, updates will be persistent in the face of failures.

Adapter developers targeting relational database systems or other line-of-business systems that support (or expect) transactions will need to identify how the target system supports and exposes transaction support and then identify an appropriate WCF transaction model to use.

For more information about WCF transactions, see Windows Communication Foundation Transactions Overview (http://go.microsoft.com/fwlink/?LinkId=82977).

See Also

Concepts

Planning Your Adapter Design

� 2014 Microsoft Corporation. All rights reserved.


Understanding Metadata Search and Browse

Unlike a static service built using the WCF, adapters built using the WCF LOB Adapter SDK can provide dynamic information about the types and operations available in a line-of-business system. Developers can support the following operations:

  • Metadata Browse, enabling the user to review a list of all operations and types available in the line-of-business system.

  • Metadata Search, enabling the user to search for operations using different criteria often based on the line of business system. For example, the user could search on "*CUST*" to retrieve all operations that have "CUST" anywhere in their name.

  • Metadata Retrieval, which supplies information about a specific list of supported operations or data types.

If the line of business system contains hundreds or thousands of operations, providing the ability to search for specific operations or browse certain groups of information can enhance the user experience.

See Also

Concepts

Planning Your Adapter Design

Other Resources

IMetadataRetrievalContract

� 2014 Microsoft Corporation. All rights reserved.


Development

This section contains information for developers who are creating adapters using the WCF LOB Adapter SDK. Once the adapter has been developed, it is usually consumed by either .NET or BizTalk Server developers as a way to access operations and data in a desired target line-of-business system.

In This Section

  • Development Best Practices

  • Impact of Namespaces on WSDL/Proxy

  • WSDL PortType Documentation Schema

  • Managing Adapter Versioning

  • Using a Service Behavior to Provide Credentials

  • How to Surface an Adapter Setting as an Adapter Binding Property

  • Browsing and Searching Metadata

  • Transactional Support

  • Hosting an Adapter

  • Consuming an Adapter

See Also

Concepts

Getting Started
Troubleshooting

� 2014 Microsoft Corporation. All rights reserved.


Development Best Practices

You can use the best practices in this topic to improve your applications and adapters.

Call Abort Before Close on Channel Exception

When you write an application that uses the WCF channel model, you should call IRequestChannel.Abort before calling ChannelFactory.Close. If you do not, ChannelFactory.Close will throw an exception.

In the following example, channel operations are attempted within a try/catch block. If an exception occurs, the channel is aborted.

C# Copy Code
ChannelFactory<IRequestChannel> cf = new  ChannelFactory<IRequestChannel>();
IRequestChannel channel = null;
try
{
  cf.Open();
  channel = cf.CreateChannel();
  channel.Open();
  channel.Request();// This causes the channel to go into a faulted state.
  channel.Close();
}
catch (Exception e)
{
  // Abort the channel if we have one
  if(channel != null)
    channel.Abort();
}
finally
{
  if (cf.State == CommunicationState.Opened)
  {
    cf.Close(); // It throws an exception that the channel is in a faulted state.
  }
}

Implement Both Asynchronous and Synchronous Handlers

If possible, implement both asynchronous and synchronous handlers in your adapter. If your adapter only implements synchronous calls, you may run into blocking issues when processing a large volume of messages or when the adapter is used in a multithreaded environment.

Use Connection Pooling

The WCF LOB Adapter SDK supports connection pooling by default. However, it is up to the adapter developer to determine which connection pooling properties to expose as binding properties. The available Connection Pool settings are defined within

There are no options within the Consume Adapter Service Add-in to easily expose these properties as adapter connection properties. The adapter developer must manually define the properties in the adapter implementation.

C# Copy Code
public CustomAdapter(): base()
{
   this.Settings.ConnectionPool.EnablePooling = true;
   this.Settings.ConnectionPool.HandlersShareSameConnection = true;
   this.Settings.ConnectionPool.MaxConnectionsPerSystem = 50;
   this.Settings.ConnectionPool.MaxAvailableConnections = 5;
}

Ensure That the Adapter Supports Two-Way Operations

If your adapter will be called from BizTalk Server, it must support two-way operations, even if the return value is void. This is because BizTalk Server expects a response returned from any outgoing request, and will throw an exception if your adapter only implements one-way operations.

Here is an example of a request-response contract that returns void.

C# Copy Code
[ServiceContract(Namespace=”Http:Microsoft.BizTalk.Samples.WCFAdapterSample”)]
public interface ICalculator
{
   [OperationContract]
   void Add(double n1, double n2);
}

Implement Tracing

During the development cycle, it might not seem important to add tracing to your adapter, since you can step through the code and debug any problems. However, once the adapter is installed in a production environment, you might not be able to use run-time debugging to isolate problems. If you have enabled tracing throughout your adapter, it can be used to isolate where failures are occurring.

See Tracing an Adapter for further details.

Use URI Properties for Frequently Changed Settings

When deciding whether to expose a custom property as a binding or URI property, it is recommended to use a URI property if the value will change often. Binding properties should be reserved for values that rarely change.

An example binding property would be a database server name that is used by all connections. An example URI property would be a specific table or stored procedure to be used by that specific connection.

Do Not Pass User Name or Password Values in the URI

If your adapter requires the caller’s credentials, it is recommended to use the ClientCredentials class to retrieve credential values instead of passing client credentials as part of the URI. The ClientCredentials class is a standard feature of WCF that is intended for passing credential information from the client to the service in a more secure manner. Passing the user information as part of the URI string may expose the user information while in transit.

The recommended methods of passing credentials are shown in the following table.

Method Description

Design time

When using the Add Adapter Service Reference Plug-in, you can specify the client credential types that the adapter supports.

Run time

When using a generated .NET CLR proxy, you can programmatically set the client credentials.

C# Copy Code
static void Main(string[] args)
{
   EchoServiceClient client = new EchoServiceClient();
   client.ClientCredentials.UserName.UserName = "TestUser";
   client.ClientCredentials.UserName.Password = "TestPassword";
   string response=client.EchoString("Test String");
}

Alternatively, if you need to interact with the channel directly, you can use the WCF channel model to specify the client credentials when creating a channel factory.

C# Copy Code
EchoAdapterBinding binding = new EchoAdapterBinding();
binding.Count = 3;
ClientCredentials clientCredentials = new ClientCredentials();
clientCredentials.UserName.UserName = "TestUser";
clientCredentials.UserName.Password = "TestPassword";
BindingParameterCollection bindingParms = new BindingParameterCollection();
bindingParms.Add(clientCredentials);
EndpointAddress address = new EndpointAddress("echo://");
IChannelFactory<IRequestChannel> requestChannelFactory = binding.BuildChannelFactory<IRequestChannel>(bindingParms);
requestChannelFactory.Open();

WCF configuration

In the client configuration file, add an <endpointBehaviors> element that includes <clientCredentials>.

Copy Code
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
      <system.serviceModel>
          . . . . .
          <behaviors>
            <endpointBehaviors>
              <behavior name="clientEndpointCredential">
                <clientCredentials>
                  <windows allowNtlm="false" allowedImpersonationLevel="Delegation" />
                </clientCredentials>
              </behavior>
            </endpointBehaviors>
          </behaviors>
      </system.serviceModel>
  </configuration>

Using BizTalk

When using the WCF adapter to consume your adapter, you can add the clientCredentials behavior extension on the Behavior tab. Once this has been added, you can set the desired client credentials in the endpoint behavior.

Do Not Return Both StrongDataSetType and WeakDataSetType

If your adapter returns a DataSet, use either StrongDataSetType or WeakDataSetType, but do not use both at the same time. The root node name and namespace produced by both types are identical, and cannot exist simultaneously in a WSDL.

While WeakDataSetType and StrongDataSetType both represent a System.Data.DataSet, StrongDataSetType is easier to use in .NET applications, since the proxy generated will appear as System.Data.Dataset. The proxy generated by WeakDataSetType is XmlElement[], which is more difficult to use in a .NET application. BizTalk Server cannot consume the schema returned from StrongDataSet, but is able to consume WeakDataSetType.

Note
StrongDataSetType and WeakDataSetType only control how the client application interprets the XML messages passed by the adapter. The XML message will be the same regardless of which type is specified.

Note
When returning StrongDataSetType, you must set CompileWsdl to false. When set to true, the default, XmlSchemaSet::Compile is called within the adapter to ensure there are no errors in the WSDL, however the schema produced by StrongDataSetType will generate an exception in XmlSchemaSet.

Setting CompileWsdl to false bypasses WSDL schema validation within the adapter and validation will occur during proxy generation. Utilities such as svcutil.exe are able to generate a proxy for both StrongDataSetType and WeakDataSetType.

To work with both BizTalk and .NET environments, consider implementing a binding property that allows switching between the two return types as dictated by the environment.

C# Copy Code
internal static QualifiedType GetDataSetQualifiedType(MyAdapterBindingProperties bindingProperties)
{
   if (bindingProperties.EnableBizTalkCompatibility)
      return QualifiedType.WeakDataSetType;
   else
      return QualifiedType.StrongDataSetType;
}

Create Meaningful XSD Schema Names in BizTalk Server

When using the Consume Adapter Service BizTalk Project Add-in design-time tool, the name of the XSD schema generated in your BizTalk project is created using the DefaultXsdFileNamePrefix property, the fileNameHint annotation in the WSDL and, if required, a unique integer value.

For example, if DefaultXsdFileNamePrefix is set to “MyAdapter” and the fileNameHint annotation is set to “Stream”, the XSD schema created will be named MyAdapterStream.xsd.

Copy Code
<xs:schema elementFormDefault='qualified' targetNamespace='http://schemas.microsoft.com/Message' xmlns:xs='http://www.w3.org/2001/XMLSchema' xmlns:tns='http://schemas.microsoft.com/Message'>
<xs:annotation>
<xs:appinfo>
<fileNameHint xmlns='http://schemas.microsoft.com/servicemodel/adapters/metadata/xsd'>Stream</fileNameHint>
</xs:appinfo>
</xs:annotation>
<xs:simpleType name='StreamBody'>
<xs:restriction base='xs:base64Binary' />
</xs:simpleType>
</xs:schema>
Note
The default value of DefaultXsdFileNamePrefix is the name of your binding. To specify a different value, override DefaultXsdFileNamePrefix in your Adapter class that is derived from AdapterBinding.

There are two possible methods to add the fileNameHint annotation to the schema: override the Export…Schema methods on OperationMetadata\TypeMetadata or override the IWsdlRetrieval implementation of the adapter. For either method, you can call the base implementation and then add the annotation to the schemas in the schema collection.

Note
When overriding the Export…Schema methods, there may be multiple operation/type definitions in the same schema; the adapter should make sure that multiple occurrences of the fileNameHints annotation in the same schema do not conflict. The Consume Adapter Service Add-in will use the first occurrence of fileNameHint if it occurs multiple times within a schema.

In the following example, IWsdlRetrieval is used to add the fileNameHint annotation to the WSDL.

C# Copy Code
sealed class MyAdapterWsdlRetrieval : IWsdlRetrieval
{
   IWsdlRetrieval mBaseWsdlRetrieval;
   public MyAdapterWsdlRetrieval(IWsdlRetrieval baseWsdlRetrieval)
   {
      mBaseWsdlRetrieval = baseWsdlRetrieval;
   }

   ServiceDescription IWsdlRetrieval.GetWsdl(Microsoft.ServiceModel.Channels.MetadataRetrievalNode[] nodes, Uri uri, TimeSpan timeout)
   {
      ServiceDescription baseDesc = mBaseWsdlRetrieval.GetWsdl(nodes, uri, timeout);
      foreach (XmlSchema schema in baseDesc.Types.Schemas)
      {
         CreateFileNameHint(schema);
      }
      return baseDesc;
   }

   void CreateFileNameHint(XmlSchema schema)
   {
      string targetNamespace = schema.TargetNamespace;
      if (string.IsNullOrEmpty(targetNamespace))
         return;
      string fileNameHint = null;
      //determine the filename based on namespace
      if (targetNamespace.StartsWith("myadapter:// adapters.samples.myadaptpter/HelloWorld"))
      {
         fileNameHint = "HelloWorld";
      }
      if (targetNamespace.StartsWith("myadapter:// adapters.samples.myadapter/Hello"))
      {
         fileNameHint = "Hello";
      }
      //create the annotation and populate it with fileNameHint
      XmlSchemaAnnotation annotation = new XmlSchemaAnnotation();
      XmlSchemaAppInfo appInfo = new XmlSchemaAppInfo();
      XmlDocument doc = new XmlDocument();
      XmlNode[] fileNameHintNodes = new XmlNode[1];
      fileNameHintNodes[0] = doc.CreateElement(null, "fileNameHint", "http://schemas.microsoft.com/servicemodel/adapters/metadata/xsd");
      fileNameHintNodes[0].AppendChild(doc.CreateTextNode(fileNameHint));
      appInfo.Markup = fileNameHintNodes;
      annotation.Items.Add(appInfo);
      schema.Items.Insert(0, annotation);
   }

Do Not Modify AdapterEnvironmentSettings During Processing

The adapter should only set the AdapterEnvironmentSettings, ConnectionPoolManager, ConnectionPool, and CommonCacheSize during adapter initialization and should not attempt to modify the values for a running instance.

If these settings are modified on a currently running adapter instance, this may result in new connections overwriting configuration settings for currently executing connections.

See Also

Concepts

Development

� 2014 Microsoft Corporation. All rights reserved.


Impact of Namespaces on WSDL/Proxy

The Microsoft Windows Communication Foundation (WCF) Line of Business (LOB) Adapter SDK generates WSDL and proxies for an adapter using values supplied by the developer using the WCF LOB Adapter Development Wizard or specified in code through modification of the SERVICENAMESPACE private variable and/or the Namespace property of the adapter.

The schema types and elements defined within the <wsdl:types><schema> use the {OperationNamespace} by default. If a particular type has an overridden TypeNamespace set in the TypeMetadata object, that namespace is used for the complex type and/or or element definition.

Impact on WSDL

The following table shows how the different namespaces in a custom adapter affect the corresponding WSDL. In the table, ~{OperationNamespace} is the class namespace mapping of a URI; for example, if {OperationNamespace} is "myscheme://a.b/c", ~{OperationNamespace} will be myscheme.a.b.c.

WSDL Construct | Syntax
WSDL targetNamespace, Xmlns:ts | {Custom}Adapter.Namespace
<wsdl:portType> | {scheme}.~{OperationNamespace}
WSDL Input Message Name | {scheme}.~{OperationNamespace}_{OperationName}_InputMessage
WSDL Output Message Name | {scheme}.~{OperationNamespace}_{OperationName}_OutputMessage
<wsdl:types><schema> targetNamespace | {scheme}://{OperationNamespace}
<element><complexType> | Use {TypeNamespace} if its value is not null or empty.

Impact on Proxy

Three different attributes in the proxy are affected by namespaces:

  • [System.ServiceModel.ServiceContractAttribute(Name="{scheme}.~{OperationNamespace}", Namespace="{Custom}Adapter.Namespace”]

  • [System.ServiceModel.MessageContractAttribute(WrapperName="DivideResponse", WrapperNamespace="{scheme}://{OperationNamespace}", IsWrapped=true)]

  • [System.ServiceModel.MessageBodyMemberAttribute(Namespace="{scheme}://{TypeNamespace}", Order=0)]

See Also

Concepts

Development

� 2014 Microsoft Corporation. All rights reserved.


WSDL PortType Documentation Schema

The WSDL that the WCF LOB Adapter SDK generates contains additional descriptive information for each portType. The schema for this additional information is described in this topic.

Documentation XML Schema

The operation documentation is implemented using annotation of the portType to add a node that represents the adapter documentation for the operation. This node contains subnodes that further describe the operation and parameters. This schema is defined as follows.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="adapterOperationDocumentation">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="summary" type="xs:string" />
        <xs:element maxOccurs="unbounded" name="param">
          <xs:complexType>
            <xs:simpleContent>
              <xs:extension base="xs:string">
                <xs:attribute name="name" type="xs:string" use="required" />
              </xs:extension>
            </xs:simpleContent>
          </xs:complexType>
        </xs:element>
        <xs:element name="returns" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

When WSDL is generated for a given operation, the preceding schema is used to provide additional descriptive information in human readable format. For example, the following portType information is returned for the EchoString operation of the Echo Adapter.

Copy Code
<wsdl:portType name="EchoService">
  <wsdl:operation name="EchoString">
    <wsdl:documentation>
      <doc:adapterOperationDocumentation>
        <doc:summary>String EchoString( string aName)</doc:summary>
        <doc:param name="aName">This string will be echoed back to the user.</doc:param>
        <doc:returns>String value containing the value of aName </doc:returns>
      </doc:adapterOperationDocumentation>
    </wsdl:documentation>
    <wsdl:input wsaw:Action="Echo/EchoString" message="ns2:EchoService_EchoString_InputMessage" />
    <wsdl:output wsaw:Action="Echo/EchoString/response" message="ns2:EchoService_EchoString_OutputMessage" />
  </wsdl:operation>
</wsdl:portType>

The values for the documentation elements are obtained from ParameterizedOperationMetadata for the operation. The preceding example was generated as a result of the following example.

C# Copy Code
ParameterizedOperationMetadata om = new ParameterizedOperationMetadata(operationId, operationId);
// set this if you want this operation to belong to this interface name
// in the generated proxy, the interface name will be EchoService
// and the client implementation name will be EchoServiceClient.
om.OperationGroup = "EchoService";
// set the operation namespace to be same as service namespace
om.OperationNamespace = EchoAdapter.SERVICENAMESPACE;
switch (operationId)
{
   case "Echo/EchoString":
       om.DisplayName = "EchoString";
       om.OriginalName = "targetSystemEchoString";
       om.Description = "String EchoString( string aName)";
       OperationParameter parm1 = new OperationParameter("aName", OperationParameterDirection.In, QualifiedType.StringType, false);
       parm1.Description = "This string will be echoed back to the user.";
       OperationResult result = new OperationResult(new SimpleQualifiedType(XmlTypeCode.String), false);
       result.Description = "String value containing the value of aName";
       om.Parameters.Add(parm1);
       om.OperationResult = result;
       return om;

See Also

Concepts

Development

� 2014 Microsoft Corporation. All rights reserved.


Managing Adapter Versioning

After initial deployment of adapters and potentially several times during their lifetime, adapters (and the endpoints they expose) may need to be changed for a variety of reasons. These reasons include changing business needs, information technology requirements, or issues with the line of business system or the adapter itself. This topic discusses different strategies for handling versioning for adapters that are written using the Microsoft Windows Communication Foundation (WCF) Line of Business (LOB) Adapter SDK.

Versioning and Windows Communication Foundation

The WCF LOB Adapter SDK is built upon Windows Communication Foundation (WCF) and relies on its infrastructure for exchanging messages between systems. Using mechanisms that WCF exposes, you can version both services and data contracts. For more information, including best practices for service versioning, see Service Versioning in the WCF online reference. For more information, including best practices for data contract versioning, see Data Contract Versioning in the WCF online reference.

Versioning Scenarios

There are two primary versioning scenarios:

  • One adapter version supports multiple versions of the target system.

  • Two or more adapter versions support the same system or two or more different systems.

You may also need to release a new version of your adapter if updates to the WCF LOB Adapter SDK affect existing functionality.

Each of these scenarios requires a different versioning strategy.

Note
The WCF LOB Adapter SDK does not enforce any specific versioning scenarios. It is left to the developer to determine versioning requirements for an adapter.

One adapter supports multiple versions of target system

When the adapter supports multiple versions of the target system, you should expose one or more binding properties that can be used to identify the desired version. For example, an adapter might support multiple communication libraries supplied by the target system's vendor. Using a custom binding property named "LibraryVersion," the adapter consumer could choose which library to use based on the deployment environment or other requirements.

Two or more adapters support one version of target system

In this case, each adapter should use a unique scheme (ContosoV1:// and ContosoV2://) and a unique binding name (ContosoV1Binding and ContosoV2Binding). Vendors should consider using their name in the scheme and binding name as well (for example, Microsoft.ContosoV1:// and Microsoft.ContosoV1Binding).

New versions of the WCF LOB Adapter SDK

When new versions of the WCF LOB Adapter SDK are released, you will be able to install the new version without having to recompile your adapter, since WCF LOB Adapter SDK releases are be backward-compatible. However, you should evaluate new releases to determine if there is a change in functionality that your adapter depends on, or if there is new functionality that your adapter would benefit from implementing.

See Also

Concepts

Development

� 2014 Microsoft Corporation. All rights reserved.


Using a Service Behavior to Provide Credentials

Many times, adapter consumers will be required to pass credentials to the target line of business system. To provide this functionality, you will need to provide a WCF service behavior.

The following example code demonstrates how to derive a service behavior. It delegates the credentials obtained from the consumer of the adapter to the adapter. The adapter then must use line-of-business protocols to authenticate the credentials. Once the credentials are authenticated, the service can start listening for incoming events from the line of business application.

Copy Code
/// <summary>
/// This class derives from a WCF service behavior.  It is used in the inbound scenario
/// for the Inbound Service to pass the line-of-business credentials to the adapter using
/// WCF ClientCredentials class.
/// </summary>
public class InboundClientCredentialsServiceBehavior : ClientCredentials, IServiceBehavior
{
    public InboundClientCredentialsServiceBehavior() { }

    public InboundClientCredentialsServiceBehavior(InboundClientCredentialsServiceBehavior other)
         : base(other)
    {
    }

    #region IServiceBehavior Members

    public void AddBindingParameters(ServiceDescription serviceDescription, System.ServiceModel.ServiceHostBase serviceHostBase, System.Collections.ObjectModel.Collection<ServiceEndpoint> endpoints, System.ServiceModel.Channels.BindingParameterCollection bindingParameters)
    {
        bindingParameters.Add(this);
    }

    public void ApplyDispatchBehavior(ServiceDescription serviceDescription, System.ServiceModel.ServiceHostBase serviceHostBase)
    {
    }

    public void Validate(ServiceDescription serviceDescription, System.ServiceModel.ServiceHostBase serviceHostBase)
    {
    }

    #endregion

    protected override ClientCredentials CloneCore()
    {
        return new InboundClientCredentialsServiceBehavior(this);
    }
}

The following example code shows how to use the service behavior to pass credentials to the adapter.

Copy Code
// Create a ServiceHost for the EchoServiceImpl type
// and use the base address from app.config
ServiceHost host = new ServiceHost(typeof(EchoServiceImpl));

// Set service behavior to pass the line-of-business credentials.
InboundClientCredentialsServiceBehavior credentialsBehavior = new InboundClientCredentialsServiceBehavior();
credentialsBehavior.UserName.UserName = "username";
credentialsBehavior.UserName.Password = "****";
host.Description.Behaviors.Add(credentialsBehavior);

// Open the ServiceHost to start listening for messages
host.Open();

Console.WriteLine("The service is ready.");
Console.WriteLine("Press <ENTER> to terminate service.");
Console.ReadLine();

// Close the ServiceHost
host.Close();

See Also

Concepts

Development

� 2014 Microsoft Corporation. All rights reserved.


How to Surface an Adapter Setting as an Adapter Binding Property

The WCF LOB Adapter SDK uses the properties defined in different classes for configuring the connection pool, metadata cache, and other adapter behaviors. This topic describes how you can surface these properties as binding properties, so that the adapter consumer can set them through a configuration file.

To surface an adapter setting as an adapter binding property

  1. Start Visual Studio, and then on the File menu, point to New, and then click Project.

  2. Choose the WCF LOB Adapter template, and then provide the other adapter project information.

  3. Step through the WCF LOB Adapter Development Wizard. When you get to the Adapter Properties page, add the binding properties that you want to expose by providing a Property name, Data type, and Default value, and then click Add to add the new adapter property.

  4. Complete the Adapter Development Wizard. Your project should contain new files provided by the wizard.

  5. In Visual Studio, in Solution Explorer, open the adapter-derived class. For example, if the name of your adapter project is "SampleAdapter", the adapter derived class can be found in "SampleAdapter.cs".

  6. Remove the private variables for the properties that you want to get and set from adapter settings. The private variables were generated by the Adapter Development Wizard.

  7. Update the get/set methods to read/write values from/to adapter settings. The following example uses an adapter property to allow enablement of performance counters.

    Copy Code
       [System.Configuration.ConfigurationProperty("enablePerfCounters", DefaultValue = false)]
   public bool EnablePerfCounters
   {
       get { return environmentSettings.PerformanceCounters.Enabled;    }
       set { environmentSettings.PerformanceCounters.Enabled = value; }
   }

  8. In Visual Studio, on the File menu, click Save All.

See Also

Concepts

Tutorial 1: Develop the Echo Adapter
Development

� 2014 Microsoft Corporation. All rights reserved.


Browsing and Searching Metadata

This section provides information about how to expose browse and search functionality with an adapter by implementing IMetadataBrowseHandler and IMetadataSearchHandler, respectively.

IMetadataBrowseHandler

When adding an adapter to a project, IMetadataBrowseHandler allows browsing of the categories and operations that the adapter supports. This allows the adapter consumer to view metadata information at design time, and to select only the operations that the client process requires.

When using the Add Adapter Service Reference Visual Studio Plug-in or Consume Adapter Service BizTalk Project Add-in to add an adapter to a project, the IMetadataBrowseHandler populates the Select contract type, Select a Category, and Available categories and operations boxes.

The following example demonstrates how to implement IMetadataBrowseHandler. It constructs a MetadataRetrievalNode array containing information on the categories and operations that the adapter supports.

C# Copy Code
public class EchoAdapterMetadataBrowseHandler : EchoAdapterHandlerBase, IMetadataBrowseHandler
    {
        /// <summary>
        /// Initializes a new instance of the EchoAdapterMetadataBrowseHandler class
        /// </summary>
        public EchoAdapterMetadataBrowseHandler(EchoAdapterConnection connection
            , MetadataLookup metadataLookup)
            : base(connection, metadataLookup)
        {
        }

        #region IMetadataBrowseHandler Members

        /// <summary>
        /// Retrieves an array of MetadataRetrievalNodes from the target system.
        /// The browse operation will return nodes starting from the childStartIndex in the path provided in absoluteName, and the number of nodes returned is limited by maxChildNodes.
        /// The method should complete within the specified timespan or throw a timeout exception.
        /// If absoluteName is null or an empty string, return nodes starting from the root + childStartIndex.
        /// If childStartIndex is zero, then return starting at the node indicated by absoluteName (or the root node if absoluteName is null or empty).
        /// </summary>
        public MetadataRetrievalNode[] Browse(string nodeId
            , int childStartIndex
            , int maxChildNodes, TimeSpan timeout)
        {
            // note we don't support timeout in this sample
            if (MetadataRetrievalNode.Root.NodeId.Equals(nodeId))
            {
                MetadataRetrievalNode node = new MetadataRetrievalNode("EchoMainCategory");
                node.DisplayName = "Main Category";
                node.IsOperation = false;
                node.Description = "This category contains inbound and outbound categories.";
                node.Direction = MetadataRetrievalNodeDirections.Inbound | MetadataRetrievalNodeDirections.Outbound;
                return new MetadataRetrievalNode[] { node };
            }
            else if( "EchoMainCategory".CompareTo(nodeId) == 0 )
            {
                // Inbound operations
                MetadataRetrievalNode inOpNode1 = new MetadataRetrievalNode("Echo/OnReceiveEcho");
                inOpNode1.DisplayName = "OnReceiveEcho";
                inOpNode1.Description = "This operation echoes the location and length of a file dropped in the specified file system.";
                inOpNode1.Direction = MetadataRetrievalNodeDirections.Inbound;
                inOpNode1.IsOperation = true;
                // Outbound operations
                MetadataRetrievalNode outOpNode1 = new MetadataRetrievalNode("Echo/EchoStrings");
                outOpNode1.DisplayName = "EchoStrings";
                outOpNode1.Description = "This operation echoes the incoming string COUNT number of times in a string array.";
                outOpNode1.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode1.IsOperation = true;
                MetadataRetrievalNode outOpNode2 = new MetadataRetrievalNode("Echo/EchoGreetings");
                outOpNode2.DisplayName = "EchoGreetings";
                outOpNode2.Description = "This operation echoes the incoming Greeting object COUNT number of times in an array of type Greeting.";
                outOpNode2.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode2.IsOperation = true;
                MetadataRetrievalNode outOpNode3 = new MetadataRetrievalNode("Echo/EchoCustomGreetingFromFile");
                outOpNode3.DisplayName = "EchoCustomGreetingFromFile";
                outOpNode3.Description = "This operation echoes the greeting object by reading its instance from a file. The Greeting object's metadata is obtained from a predefined XSD file.";
                outOpNode3.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode3.IsOperation = true;
                return new MetadataRetrievalNode[] { inOpNode1, outOpNode1, outOpNode2, outOpNode3 };
            }

            return null;
        }

        #endregion IMetadataBrowseHandler Members
    }

IMetadataSearchHandler

Implementing IMetadataSearchHandler within an adapter provides the ability to search for available operations at design time by entering a search term, such as a portion of an operation name. This is very useful if your adapter contains many operations, since you can enter search values to limit the operations returned.

When using the Add Adapter Service Reference Visual Studio Plug-in or Consume Adapter Service BizTalk Project Add-in to add an adapter to a project, the IMetadataSearchHandler resolves search strings entered in the Search in category box, and returns a list of matching items in the Available categories and operations box.

You can also perform searches with svcutil.exe when generating WSDL or proxy for an adapter, by passing the search value as a query string in the format of op=value. The following is an example of using svcutil.exe to return only the Echo/EchoStrings operation information.

Copy Code
svcutil.exe “echov2://lobhostname/lobapplication?enableAuthentication=False&op=Echo/EchoStrings” /target:metadata
Note
The WCF LOB Adapter SDK does not provide a default wildcard search functionality such as Echo* or %Echo%. It is up to the adapter author to implement wildcard or pattern matching functionality.

The following example demonstrates how to implement IMetadataSearchHandler. It constructs a MetadataRetrievalNode array containing information about the categories and operations that the adapter supports.

C# Copy Code
public class EchoAdapterMetadataSearchHandler : EchoAdapterHandlerBase, IMetadataSearchHandler
    {
        /// <summary>
        /// Initializes a new instance of the EchoAdapterMetadataSearchHandler class
        /// </summary>
        public EchoAdapterMetadataSearchHandler(EchoAdapterConnection connection
            , MetadataLookup metadataLookup)
            : base(connection, metadataLookup)
        {
        }

        #region IMetadataSearchHandler Members

        /// <summary>
        /// Retrieves an array of MetadataRetrievalNodes (see Microsoft.ServiceModel.Channels) from the target system.
        /// The search will begin at the path provided in absoluteName, which points to a location in the tree of metadata nodes.
        /// The contents of the array are filtered by SearchCriteria and the number of nodes returned is limited by maxChildNodes.
        /// The method should complete within the specified timespan or throw a timeout exception.  If absoluteName is null or an empty string, return nodes starting from the root.
        /// If SearchCriteria is null or an empty string, return all nodes.
        /// </summary>
        public MetadataRetrievalNode[] Search(string nodeId
            , string searchCriteria
            , int maxChildNodes, TimeSpan timeout)
        {

            List<MetadataRetrievalNode> resultList = new List<MetadataRetrievalNode>();
            if ("OnReceiveEcho".ToLower().Contains(searchCriteria.ToLower()))
            {
                MetadataRetrievalNode nodeInbound = new MetadataRetrievalNode("Echo/OnReceiveEcho");
                nodeInbound.DisplayName = "OnReceiveEcho";
                nodeInbound.Description = "This operation echos the location and length of a file dropped in the specified file system.";
                nodeInbound.Direction = MetadataRetrievalNodeDirections.Inbound;
                nodeInbound.IsOperation = true;
                resultList.Add(nodeInbound);
            }
            if ("EchoStrings".ToLower().Contains(searchCriteria.ToLower()))
            {
                MetadataRetrievalNode outOpNode1 = new MetadataRetrievalNode("Echo/EchoStrings");
                outOpNode1.DisplayName = "EchoStrings";
                outOpNode1.Description = "This operation echoes the incoming string COUNT number of times in a string array.";
                outOpNode1.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode1.IsOperation = true;
                resultList.Add(outOpNode1);
            }
            if ("EchoGreetings".ToLower().Contains(searchCriteria.ToLower()))
            {
                MetadataRetrievalNode outOpNode2 = new MetadataRetrievalNode("Echo/EchoGreetings");
                outOpNode2.DisplayName = "EchoGreetings";
                outOpNode2.Description = "This operation echoes the incoming Greeting object COUNT number of times in an array of type Greeting.";
                outOpNode2.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode2.IsOperation = true;
                resultList.Add(outOpNode2);
            }
            if ("EchoCustomGreetingFromFile".ToLower().Contains(searchCriteria.ToLower()))
            {
                MetadataRetrievalNode outOpNode3 = new MetadataRetrievalNode("Echo/EchoCustomGreetingFromFile");
                outOpNode3.DisplayName = "EchoCustomGreetingFromFile";
                outOpNode3.Description = "This operation echoes the greeting object by reading its instance from a file. The Greeting object's metadata is obtained from a predefined XSD file.";
                outOpNode3.Direction = MetadataRetrievalNodeDirections.Outbound;
                outOpNode3.IsOperation = true;
                resultList.Add(outOpNode3);
            }
            return resultList.ToArray();
        }

        #endregion IMetadataSearchHandler Members
    }

See Also

Concepts

Development

� 2014 Microsoft Corporation. All rights reserved.


Transactional Support

Inbound Transactions

There are two methods of implementing transactions with inbound operations: dispatcher-initiated or adapter-initiated. The requirements of the adapter dictate which method should be used. The value of SupportsTransactedInbound indicates which type of transaction your adapter will implement.

The following table compares dispatcher-initiated with adapter-initiated transactions.

SupportsTransactedInbound Transactional Behavior

True (dispatcher-initiated)

  • TryReceive will always be called within the context of a transaction.

  • The transaction will be committed after the message is returned to the service implementation.

  • A new transaction will be created for each IInputChannel.Receive call. Spanning a transaction across multiple receives is dependent on the service host and not the adapter developer.

Note
If the host is not using the WCF dispatcher (service host) and is instead using channel level programming, the host should honor the TransactedReceiveEnabled property of the WCF binding, and should make all calls to IInputChannel.Receive within a transaction.

Note
If the adapter uses dispatcher-initiated transactions, and will be used with Biztalk Server, set SupportedInboundChannels to SupportedInboundChannels.IInputChannel to indicate that the adapter only supports one-way channels. If this is not set, BizTalk Server will attempt to use two-way channels.

False (adapter-initiated)

  • The adapter developer must implement transaction logic within the adapter.

  • Adapter-initiated transactions can only work with a two-way messaging (Reply Channel) model.

  • One transaction can span multiple messages, since dependent clones will be created for each message by the dispatcher.

Dispatcher-initiated Transactions

When SupportsTransactedInbound is set to true, the WCF dispatcher will then automatically create a transaction when calling the TryReceive method of the adapter, and will commit the transaction after the message is returned to the service implementation. This does not require any specific transactional code implementation within the adapter other than setting SupportsTransactedInboundto true. However, this is dependent on the adapter being hosted within a service host that uses the WCF dispatcher, and will not occur if you are using channel level programming. When using channel level programming, the host should honor the TransactedReceiveEnabled property of the WCF binding and make all calls to Receive within a transaction.

The following demonstrates a client creating a transaction, and then calling the adapter using channel level programming.

C# Copy Code
Message message;
//Use a new TransactionScope
using (System.Transactions.TransactionScope tx = new System.Transactions.TransactionScope())
{
    message = channel.Receive(TimeSpan.FromMinutes(2));
    tx.Complete();
}

Adapter-initiated Transactions

When SupportsTransactedInbound is set to false, transaction support must be implemented within the adapter code by creating a new transaction. Before returning a message from TryReceive, the transaction must be attached to the message by calling the Set method of the TransactionMessageProperty class. This implementation requires explicit transaction support in the adapter code, and provides greater control over the transactional behavior of the adapter.

The following demonstrates creating a dependent transaction, and attaching this to the message before it is returned to the client.

C# Copy Code
Transaction transaction = inboundConnection.CurrentTransaction; //Existing transaction
DependentTransaction dt = transaction.DependentClone(DependentCloneOption.BlockCommitUntilComplete);
TransactionMessageProperty.Set(dt, message);
inboundReply.DependentTransaction = dt; //this will later be closed during Reply processing

See Also

Concepts

Development

� 2014 Microsoft Corporation. All rights reserved.


Hosting an Adapter

This section contains information about hosting an adapter built by using the Microsoft Windows Communication Foundation (WCF) Line of Business (LOB) Adapter SDK in Internet Information Services (IIS). For more information about other hosting options, see “Hosting Services” at http://go.microsoft.com/fwlink/?LinkID=100314.

In This Section

  • Configuring IIS to Host an Adapter

  • Using the WCF Adapter Service Development Wizard

  • Understanding the Adapter Security Bridge

See Also

Concepts

Development

� 2014 Microsoft Corporation. All rights reserved.


Configuring IIS to Host an Adapter

To host an adapter created by the WCF LOB Adapter SDK, you must first configure Internet Information Services (IIS) for publishing WCF services. Next you must consider whether to use your WCF adapter side-by-side with ASP.NET or in ASP.NET compatibility mode, in which services can take full advantage of features that the ASP.NET Web application platform provides. For more information about hosting WCF services in IIS, see “Hosting in Internet Information Services” at http://go.microsoft.com/fwlink/?LinkId=75700.

IIS Versions and Features

You can use IIS 5.1, 6.0, 7.0, or 7.5 with ASP.NET 2.0 support enabled to publish adapters created with the WCF LOB Adapter SDK. However, there are some limitations when using older versions. For instance, IIS 5.1 should only be used for development purposes because it has a limited number of incoming connections, and is only supported on a client operating system.

Hosting Environment Platform Availability Supported Transports Features

IIS 6.0

Windows Server 2003

HTTP

  • Process recycling

  • Improved scalability and reliability

  • Application isolation

IIS 7.0

Windows Vista, Windows Server 2008, Windows 7, Windows 8

  • HTTP

  • Net.TCP

  • Net.MSMQ

  • msmq.formatname

  • Same features as IIS 6.0, but uses Windows Process Activation Service (WAS)

  • Allows transports other than HTTP

WCF Services and ASP.NET

When hosting a WCF service in IIS, there are two hosting modes available; side-by-side and ASP.NET compatibility mode. The default hosting mode is side-by-side. Side-by-side mode behaves consistently with other WCF hosting solutions. Therefore, a WCF service hosted in IIS will behave the same as one hosted in a console application. However, this may not be desirable because Web developers might expect behavior similar to ASP.NET. For instance, in side-by-side mode, WCF does not adhere to any URL-based authorization rules specified in the <system.web> <authorization> configuration element of web.config.

ASP.NET compatibility mode allows the WCF service to use all the features of ASP.NET, and to behave the same as an ASPX page; however, you must take additional steps when creating your WCF adapter to enable this functionality. For more information, see “WCF Services and ASP.NET” at http://go.microsoft.com/fwlink/?LinkId=100533.

See Also

Concepts

Hosting an Adapter

� 2014 Microsoft Corporation. All rights reserved.


Using the WCF Adapter Service Development Wizard

This topic describes using the WCF LOB Adapter Service Development Wizard to automate creation of a Web project for hosting your adapter within Internet Information Services (IIS). The hosted adapter can then be consumed by clients using Windows Communication Framework (WCF) or Web services.

To publish an adapter as a WCF service hosted in IIS

  1. Start Visual Studio 2013, and then on the File menu, select New and then click Web Site.

  2. In the New Web Site dialog box, set the Language to Visual C# and select WCF Adapter Service from Templates.

  3. Specify the Location for the solution, and then click OK. The WCF Adapter Service Development Wizard starts.

  4. On the Introduction page, click Next.

  5. On the Choose Operations page, specify the binding, contract, and operations to use for this hosted service.

    1. In the Select a binding list, select the adapter binding to use, and then click Configure. This displays the Configure Adapter dialog box. Provide the values necessary to invoke the adapter and to retrieve operation metadata.

    2. On the Security tab, select the Client credential type to use when passing client credentials to the adapter.

      Credential Type Description

      None

      The client does not need to present credentials.

      Windows

      The client will use Windows credentials.

      Username

      The client will supply a user name and password.

      Certificate

      The client will be authenticated by using an X.509 certificate. If this value is set, click Browse in the Client Certificate area, and then select the certificate to use.

    3. On the URI Properties tab, specify the URI parameters required by the adapter. The entries displayed in this tab vary based on the properties exposed in the ConnectionUri class of the adapter.

    4. On the Binding Properties tab, specify values for the binding properties required for the adapter. The General section contains common settings such as timeout values. Additional properties are listed based on the custom properties exposed in your AdapterBinding class.

  6. Once you have specified the configuration values, click Connect.

    1. From the Select contract type list, select the contract to use. This populates the Select a category tree control with a list of categories and operations available from this adapter. If the adapter implements search functionality through a MetadataRetrievalClient class, you can enter a search term in the Search in category field to return only categories and operations that contain the search term.

      Note
      Only outbound operations are available for selection.

    2. From the Available categories and operations box, select the items to add, and then click Add. Once you have added the desired items, click Next.

  7. On the Configure Service and Endpoint Behaviors page, set the desired behaviors for this adapter.

    1. The Service Behavior Configuration section contains entries that control the service behavior. After running the wizard, you can modify the selected service behaviors by editing the web.config file.

      Property Description

      EnableMetadataExchange

      Setting this value to True enables service metadata publishing to client requests. This can also be set by modifying <serviceMetadata httpGetEnabled=””> in web.config. Default is False

      IncludeExceptionDetailsinFault

      Setting this value to True results in managed exception information returned to the client in SOAP faults. This can also be set by modifying <serviceDebug usingincludeExceptionDetailInFaults=””> in web.config. Default is False.

      Name

      Name for the service behavior configuration.

      UseServiceCertificate

      This value determines whether the service will use an X.509 certificate to authenticate itself to the client process. Default is True.

      FindValue

      This value is used to search for a specific X.509 certificate in the certificate store. This can also be set by modifying <serviceCredentials findValue=””> in web.config

      Note
      Specify a value for this property only if UseServiceCertificate is set to True.

      StoreLocation

      This value specifies system store location to search for the specified certificate. This can also be set by modifying <serviceCredentials storeLocation=””> in web.config.

      Note
      Specify a value for this property only if UseServiceCertificate is set to True.

      StoreName

      This value specifies the specific system store to search for the specified certificate. This can also be set by modifying <serviceCredentials storeName=””> in web.config

      Note
      Specify a value for this property only if UseServiceCertificate is set to True.

      X509FindType

      The type of search to use with the FindValue specified earlier in order to find the specific certificate to use. This can also be set by modifying <serviceCredentials x509FindType=””> in web.config

      Note
      Specify a value for this property only if UseServiceCertificate is set to True.

    2. The Endpoint Behavior Configuration section controls the endpoint behavior.

      Property Description

      Name

      The name of the endpoint behavior

      AuthenticationType

      This value instructs the adapter where to obtain the client credentials of the incoming document. To enable clients to specify a client certificate to authenticate to the service, set this to ClientCredentialUsernamePassword. To enable clients to specify the user name and password as part of the HTTP header, set this to HTTPUsernamePassword. To enable clients to specify credentials through the ClientCredential interface, set this to Auto. If this fails, clients can pass credentials as part of the HTTP header.

      This value can also be set by modifying <endpointBehavior adapterSecurityBridgeType> in web.config. Default is Auto.

      UsernameHeader

      This specifies the name of the header that will be used to pass the user name to the service. For more information about HTTP headers, see “Support for Custom HTTP and SOAP headers” at http://go.microsoft.com/fwlink/?LinkId=106692

      This value can also be set by modifying <endpointBehavior usernameHttpHeader> in web.config.

      Note
      You must specify a value for this property if the AuthenticationType is set to HTTPUserNamePassword. If set to Auto, this property is optional.

      PasswordHeader

      This specifies the name of the header that will be used to pass the user password to the service. For more information about HTTP headers, see “Support for Custom HTTP and SOAP Headers” at http://go.microsoft.com/fwlink/?LinkId=106692

      This value can also be set by modifying <endpointBehavior passwordHttpHeader< in web.config.

      Note
      You must specify a value for this property if the AuthenticationType is set to HTTPUserNamePassword. If set to Auto, this property is optional.

    3. After setting the desired behavior, click Next to continue.

  8. On the Configure Service Endpoint Binding and Address page, you can configure the address and binding properties for the contracts. Select the contract in the Select a contract to configure list, and then enter the desired values in the Configure the address and binding for the contract dialog box.

    1. Select the BindingConfiguration entry under Binding Properties. The wizard only supports basic HTTP binding so the binding configuration field is automatically set to System.ServiceModel.Configuration.BasicHttpBindingElement. To change the configuration properties for this binding, click the ellipsis … button. To use a secure communication channel, you must always set the Mode property to Transport. This is the default value.

    2. Select the EndpointName, and then enter the desired name of the endpoint.

    3. To apply your changes, click Apply.

  9. To continue, click Next. The Summary page lists a tree structure of the adapter operations that were selected.

  10. Review the summary, and then click Finish.

  11. The wizard creates a Web project and adds the following files.

    File Description

    .svc

    Service file that references to the WCF proxy.

    .cs

    Implements the WCF proxy.

    web.config

    Contains <endpoint>, <bindings>, and <behaviors> elements for <system.ServiceModel>

  12. Publish the WCF service project.

    1. Right-click the project in Solution Explorer, and then click Publish.

    2. In the Publish Web Site dialog box, specify the target URL for the WCF service.

    3. Select Allow this precompiled site to be updated.

    4. Select Use fixed naming and single page assemblies.

    5. Select Enable strong naming on precompiled assemblies, and then specify the signing key to use.

  13. To publish the Web site, click OK.

  14. Verify that the service is published successfully.

    1. Start the IIS Management Console. Click Start, point to Administrative Tools, and then click Internet Information Services.

    2. Navigate to the node where you published the service. If the service was published as http://localhost/myservice, navigate to Internet Information Services> Computer Name> Web Sites> Default Web Site> myservice.

    3. On the right pane, right-click the .svc file, and then click Browse. The Web page shows up with information about the service. You can now consume this service by using WCF or Web service calls from client applications.

See Also

Concepts

Hosting an Adapter

� 2014 Microsoft Corporation. All rights reserved.


Understanding the Adapter Security Bridge

When the adapter is hosted within a service, calls from client applications use the Adapter Security Bridge to pass client credentials to the adapter.

Purpose of the Adapter Security Bridge

When a WCF client sends authentication to a WCF service, normally the service consumes the authentication. However, in the case of an adapter, the idea is to capture the authentication information for use with the underlying LOB system. This is implemented through the Adapter Security Bridge, which is surfaced as an endpoint behavior. As an adapter developer, there is nothing that needs to be implemented to take advantage of this functionality; however, when deploying the adapter, you must consider how the client will be providing credentials to the service.

If you are using message-level security, the Adapter Security Bridge can retrieve the ClientCredentials sent by the client application on any binding. If you are using basic HTTP binding, you can instead select to use a custom header to pass the user name and password information. It is recommended to use the ClientCredential class provided by WCF to pass credentials, however many Web Service client applications will need to use a custom header to pass credentials.

The following is an example configuration where the adapter looks for credentials in the ClientCredentials that the client application provides. If none is found, the adapter then looks in the HTTP request headers that are specified.

Copy Code
<endpointBehaviors>
   <behavior name="customEndpointBehavior">
      <endpointBehavior usernameHttpHeader="UNHdr" passwordHttpHeader="PWHdr"
         adapterSecurityBridgeType="Auto" />
    </behavior>
</endpointBehaviors>

See Also

Concepts

Hosting an Adapter

� 2014 Microsoft Corporation. All rights reserved.


Consuming an Adapter

You can consume an adapter built using the WCF LOB Adapter SDK in a variety of different scenarios and topologies. Some of the more common ways are described in this section.

In This Section

  • How to Consume an Adapter from a .NET Project

  • How to Consume an Adapter from a BizTalk Server Project

See Also

Concepts

Development

� 2014 Microsoft Corporation. All rights reserved.


How to Consume an Adapter from a .NET Project

To consume an adapter built using the WCF LOB Adapter SDK from Visual Studio, you must add a service reference to the project. You can do this by:

  • Using the Add Adapter Service Reference Visual Studio Plug-in, which is installed as part of the WCF LOB Adapter SDK.

  • Using svcutil.exe (the ServiceModel Metadata Utility), which is installed as part of the Windows SDK.

Adding a Service Reference by Using the Add Adapter Service Reference Plug-in

The Add Adapter Service Reference Plug-in can be used to browse and search metadata, and to generate .NET CLR proxy classes using the selected operations and types.

To add an adapter service reference

  1. Open your .NET application in Visual Studio.

  2. In Visual Studio, right-click the Project menu, and then click Add Adapter Service Reference.

    Note
    This option does not appear for BizTalk Server projects.

  3. In the Add Adapter Service Reference Plug-in screen, from the Select a binding drop-down list, select an adapter binding.

  4. To configure the connection URI for the selected adapter binding and to provide any credentials, URI properties, and binding properties, click Configure. Actual requirements vary based on the selected adapter binding.

  5. When you have configured the URI, click OK.

  6. Click Connect. If the connection URI is valid and client credentials (if any) are accepted, the Category pane should be populated with the categories and operations provided by the adapter.

  7. If the adapter supports search, the search field will be active. Otherwise, you can filter by contract type, explore types, and operations by clicking nodes in the Category pane.

  8. For advanced proxy generation options, click Advanced. Your options include:

    Option Equivalent svcutil.exe option Description

    Generate asynchronous methods

    /async

    Generates both synchronous and asynchronous method signatures.

    Default (if not selected): generates only synchronous method signatures.

    Generate message contracts

    /messageContract

    Generates message contract types.

    Make types internal

    /internal

    Generates classes that are marked as internal.

    Default (if not selected): generate public classes.

    Enable data binding

    /enableDataBinding

    Implements the System.ComponentModel.INotifyPropertyChanged interface on all Data Contract types to enable data binding.

    Import non-data types as IXmlSerializable

    /importXmlTypes

    Configures the Data Contract serializer to import non-Data Contract types as IXmlSerializable types.

    Generate channel interface

    Generates the channel interface.

    Mark classes serializable

    Selects whether to generate the data types with a serializer.

    Do not generate app.config

    /noConfig

    Does not generate application configuration file.

    Serializer

    Auto

    /serializer:Auto

    Automatically selects the serializer for serialization and deseralization.

    Serializer

    DataContract Serializer

    /serializer:DataContractSerializer

    Generates data types that use the Data Contract Serializer for serialization and de-serialization

    Serializer

    XmlSerializer

    /serializer:XmlSerializer

    Generates data types that use the XmlSerializer for serialization and deserialization.

  9. To generate the proxy artifacts, click OK. The number of artifacts varies based on the contract type.

    Contract Type Artifact Description

    Outbound

    CLR WCF Proxy

    Contains the contract and service implementation.

    App.config

    Contains the <endpoint> and <bindings> elements for <system.ServiceModel><client>.

    Inbound

    CLR WCF service interface

    Contains the contract.

    CLR WCF service implementation

    Stub implementation that derives from the contract.

    App.config

    Contains the <endpoint>, <bindings> and <behaviors> elements for <system.ServiceModel><service>.

  10. You can now use the proxy in your application.

Adding a Service Reference by Using svcutil.exe

Svcutil.exe is a command-line utility that can be used to retrieve metadata and generate .NET CLR proxy classes, which can then be added to a Visual Studio project. For more information about svcutil.exe, see “ServiceModel Metadata Utility Tool (Svcutil.exe)” at http://go.microsoft.com/fwlink/?LinkID=99821.

To generate a proxy class from an adapter hosted in IIS

  1. At the command prompt, enter svcutil.exe “http://localhost/adapter/AdapterService.svc?wsdl” /config:app.config. Replace the HTTP path with the correct path for your hosted adapter. This creates a .cs file that contains the .NET CLR proxy and output.config which contains the <bindings> and client <endpoint> for <system.serviceModel>.

    Note
    If your adapter contains many operations, you can limit the operations returned by using a query string of ‘op=’ followed by the name of the operation in which you are interested. For example: svcutil.exe “http://localhost/adapter/AdapterService.svc?wsdl&op=Echo/EchoString&op=Echo/EchoArray” generates proxy code for only the EchoString and EchoArray operations.

  2. Open your project in Visual Studio.

    1. In Solution Explorer, right-click the project, point to Add, and then click New Item. In the Add Existing Item dialog box, select the .cs and app.config files created previously. Click Add.

    2. In Solution Explorer, right-click References, and then click Add Reference. On the .NET tab, select System.ServiceModel, and then click OK. You can now use the proxy in your application.

See Also

Concepts

Tutorial 1: Develop the Echo Adapter
Consuming an Adapter

� 2014 Microsoft Corporation. All rights reserved.


How to Consume an Adapter from a BizTalk Server Project

This topic describes how to consume an adapter built using the Microsoft Windows Communication Foundation (WCF) Line of Business (LOB) Adapter SDK from BizTalk Server using the Consume Adapter Service BizTalk Project Add-in.

Note
In order to use the Consume Adapter Service BizTalk Project Add-in, you must install the WCF LOB Adapter SDK tools on the same computer hosting BizTalk Server.

Note
This functionality is only available in BizTalk Server 2006 R2 or later.

Using the Consume Adapter Service Add-in

To add an adapter service reference

  1. Open your .NET application in Visual Studio.

  2. In Visual Studio, in the Project pane, right-click your BizTalk Server project, and then choose Add | Add Generated Items | Consume Adapter Service.

  3. In the Consume Adapter Service Add-in screen, select an adapter binding.

  4. Click Configure to configure the connection URI for the selected adapter binding and to provide any credentials, URI properties, and binding properties. Actual requirements will vary based on the selected adapter binding.

  5. Click OK when you have configured the URI.

  6. Click Connect. If the connection URI is valid and client credentials (if any) are accepted, the Category pane should be populated with the categories and operations provided by the adapter.

  7. If the adapter support search, the search field will be active. Otherwise, you can filter by contract type and explore types and operations by clicking nodes in the Category pane.

  8. Click OK to generate the proxy artifacts. The number of artifacts varies based on the contract type:

    Contract Type Artifact Description

    Outbound

    XML Schemas

    Contains the schemas for the selected types and operations.

    WCF-Custom send port binding information XML

    Contains configuration XML for the WCF-Custom send port.

    Inbound

    XML Schemas

    Contains the schemas for the selected types and operations.

    WCF-Custom receive port binding information XML

    Contains configuration XML for the WCF-Custom receive port.

  9. You can now use the XML Schema files in your BizTalk Server application.

To deploy the BizTalk Server project

  1. Click Start, point to All Programs, point to Microsoft BizTalk Server, and then click BizTalk Server Administration.

  2. Import the port binding XML file(s) to create the physical ports. Right-click your application under the Applications group, select Import | Bindings and then navigate to and select the appropriate port binding information XML file(s).

  3. Map the logical ports defined in your BizTalk Server orchestrations to the newly created physical ports.

  4. Click Orchestrations under your application, right-click the orchestration to enlist, and then click Enlist.

  5. Click Orchestrations under your application, right-click the orchestration to enlist, and then click Start.

  6. Right-click your BizTalk Server application, and then click Start.

Generating Multiple Schemas

If you use the Consume Adapter Service Wizard to generate multiple schemas, one or more elements may be duplicated in the schemas resulting in compilation failure for the BizTalk Server project. You can avoid this by selecting the "Generate Unique Schema Type" check box to ensure that schema types are generated with unique namespaces.

See Also

Concepts

Consuming an Adapter

� 2014 Microsoft Corporation. All rights reserved.


Deployment

This section describes steps for deploying and undeploying an adapter using the WCF LOB Adapter SDK. It also describes how to create a deployment package for installation in test and production environments.

In This Section

  • How to Deploy an Adapter

  • How to Undeploy an Adapter

  • Creating a Deployment Package

� 2014 Microsoft Corporation. All rights reserved.


How to Deploy an Adapter

To deploy an adapter, you must install the adapter assembly into the global assembly cache (GAC), and then register the adapter in the machine.config file.

Installing the Adapter Assembly into the GAC

Before consuming an adapter in Visual Studio using the Add Adapter Service Reference Plug-in command or in BizTalk Server by using the Consume Adapter Service Add-in feature, you must install the assembly into the GAC. Only assemblies that are strong-named can be installed into the GAC.

Note
To complete this procedure, you must be logged on with an account that has Write permissions on the GAC. The Administrators account on the local computer has these permissions.

To configure a strong name assembly key file

  1. In Visual Studio, load the adapter project file that needs a strong name.

  2. Open a Visual Studio command prompt.

  3. At the command prompt, from the folder where you want to store the key file, type the following command, and then press ENTER:

    sn /k file_name.snk

    Example: sn /k EchoAdapter.snk

    A confirmation message, Key pair written to <file_name>.snk, displays on the command line.

  4. In Visual Studio Solution Explorer, right-click the project, and then click Properties.

  5. In the left pane, expand Common Properties, and then click Assembly.

  6. In the right pane, scroll to the Strong name box.

  7. In the Strong name box, click the field next to Assembly Key File, click the browse button (…), and then browse to the key file.

  8. Click the key file, click Open, and then click OK.

  9. On the Visual Studio menu, click Build, and then choose Build Solution.

Note
If your adapter assembly depends on any other assemblies, ensure these referenced assemblies are signed with a strong name; otherwise you will get an error.

If you have the source, you can recompile with a strong name as shown previously. If the reference assembly belongs to a third-party and you cannot ensure that it will be given a strong name, you can disassemble and then reassemble the assembly with a strong name.

Your original assembly will be overwritten, so if you want to keep the original version, ensure you make a backup copy of it before proceeding with the following steps.

Use Microsoft Intermediate Language (MSIL) Disassembler to disassemble the assembly:

  • ILDASM thirdparty.dll /out:thirdparty.il

Use MSIL Assembler to reassemble the assembly with a strong name:

  • ILASM thirdparty.il /dll /key=strongkeyfile.snk

To install an assembly in the GAC

  1. Verify that your adapter has been signed.

  2. Open a Visual Studio command prompt.

  3. Type the following command:

    gacutil.exe /if "<path to the assembly .dll file>"

  4. This installs the assembly to the GAC, overwriting any existing assembly that has the same assembly name.

Registering the Adapter in Machine.config

An adapter developed using the WCF LOB Adapter SDK is surfaced as a WCF binding. See Microsoft.ServiceModel.Channels.Common.AdapterBinding for more information. The adapter binding is registered with WCF using <bindingExtensions> section within <system.ServiceModel> and the adapter transport binding element is registered with WCF using <bindingElementExtensions> section within <system.ServiceModel>.

You can manually edit the machine.config file using a text editor.

To manually edit the machine.config file

  1. Edit the machine.config file located in the Microsoft .NET configuration folder. To do this, click Start, click Run, type notepad <Windows install path>\Microsoft.NET\Framework\<version>\CONFIG\machine.config, and then click OK.

  2. Update the machine.config file. If the file does not contain a system.serviceModel section, add the following section at the end of the configuration file but before the closing root tag.

    Note
    Replace "myAdapterBinding", version, culture and other assembly-specific information with your adapter's information.

    Copy Code
    <system.serviceModel>
  <extensions>
    <bindingExtensions>
        <add name="myAdapterBinding" type="Microsoft.Adapters.Samples.Echo.EchoAdapterBindingCollectionElement,EchoAdapter, Version=0.0.0.0, Culture=neutral, PublicKeyToken= fafafafafafafafa" />
    </bindingExtensions>      <bindingElementExtensions>
        <add name="echoAdapter" type="Microsoft.Adapters.Samples.Echo.EchoAdapterBindingElementExtension,EchoAdapter, Version=0.0.0.0, Culture=neutral, PublicKeyToken=37f23b4adb996dcf" />
      </bindingElementExtensions>
  </extensions>
</system.serviceModel>

    - OR -

    If your machine.config file contains a system.serviceModel section, determine which elements are missing and add them, replacing "MyAdapter" and other information with your adapter's information.

    Copy Code
    <extensions>
  <bindingExtensions>
        <add name="myAdapterBinding" type="Microsoft.Adapters.Samples.Echo.EchoAdapterBindingCollectionElement,EchoAdapter, Version=0.0.0.0, Culture=neutral, PublicKeyToken= fafafafafafafafa" />
  </bindingExtensions>
      <bindingElementExtensions>
        <add name="echoAdapter" type="Microsoft.Adapters.Samples.Echo.EchoAdapterBindingElementExtension,EchoAdapter, Version=0.0.0.0, Culture=neutral, PublicKeyToken=37f23b4adb996dcf" />
      </bindingElementExtensions>
</extensions>

  3. Close and save the machine.config file.

You can also use the Service Configuration Editor to modify the machine.config file. The SvcConfigEditor.exe is installed when you install the Windows SDK. For information about installing the Windows SDK, see http://go.microsoft.com/fwlink/?LinkId=81029.

To edit the machine.config file using the Service Configuration Editor

  1. Open the Service Configuration Editor. For information about using the Service Configuration Editor, see http://go.microsoft.com/fwlink/?LinkId=83557.

  2. In the tree view pane (labeled Configuration), expand the node tree. Click the Advanced folder, click the Extensions folder, and then select the binding extensions element.

    Service configuration editor.

  3. Create a new binding extension. Click the New button to open the Extension Configuration Element Editor dialog box. In Configuration Name, enter a unique name for the extensions, for example MyAdapterExtension.

    Extension configuration element editor

  4. Click the Type field, and then click the ellipsis button (...) to open the Binding Extension Type Browser dialog box.

  5. Click the global assembly cache (GAC) icon to list the DLLs in the GAC.

  6. Click your adapter assembly.

    Building extension type browser.

  7. Click the Open button to select the assembly.

  8. In the Binding Extension Type Browser dialog box, click the type name that implements the binding collection element.

    Building extension type browser.

  9. Click the Open button to select the type.

  10. Click OK to close the Extension Configuration Element Editor dialog box.

  11. In the details pane of the Binding Extensions Editor, verify that your binding extension appears. In the following figure, MyAdapterExtension is highlighted.

    Service configuration editor with added extension.

  12. Close the Service Configuration Editor.

See Also

Tasks

How to Undeploy an Adapter

Concepts

Deployment

� 2014 Microsoft Corporation. All rights reserved.


How to Undeploy an Adapter

To undeploy an adapter from a computer, the user needs to perform the following two tasks:

  1. Uninstall the adapter assembly (and any dependent assemblies) from the global assembly cache (GAC).

  2. Remove the adapter binding and adapter binding element in the machine.config file.

Uninstalling an Assembly from the GAC

Using the Windows interface

  1. Open Windows Explorer as follows: Click Start, point to All Programs, point to Accessories, and then click Windows Explorer.

  2. Browse to the GAC, which is located at %systemdrive%\Windows\Assembly.

  3. Right-click each assembly file that is included in your application, click Uninstall, and then click Yes to confirm.

Using the command line

  1. Open a Visual Studio command prompt.

  2. At the command prompt, type the following command:

    gacutil /u <fully qualifiedassembly name>

    In this command, the assembly name is the name of the assembly to uninstall from the GAC.

    The following example removes an assembly named hello.dll from the GAC.

    gacutil /u "MyAdapter,Version=1.0.0.0, Culture=neutral, PublicKeyToken=fafafafafafafafa"

Removing the Adapter Binding from the Machine.config File

You can manually edit the machine.config file and remove the adapter binding using a text editor.

To manually edit the machine.config file

  1. Edit the machine.config file located in the Microsoft .NET configuration folder. To do this, click Start, click Run, type notepad <Windows install path>\Microsoft.NET\Framework\<version>\CONFIG\machine.config, and then click OK.

    Note
    Make a backup of the machine.config file before you make changes to guard against editing mistakes.

  2. Update the machine.config file. Find the bindingExtensions element for the adapter you want to remove. Based on the other information that is present, do one of the following:

    • If there are other bindingExtensions, remove only your adapter extension.

    • If there are no other bindingExtensions, you can remove the bindingExtensions section (including your adapter extension).

    • If there are no other bindingExtensions or extensions, you can remove the extensions section.

    • Finally, if system.serviceModel contains only your adapter extension, you can remove the entire system.serviceModel section.

  3. Repeat step 2 for the bindingElementExtensions element.

  4. Close and save the machine.config file.

You can also use the Service Configuration Editor to modify the machine.config file. SvcConfigEditor.exe is installed when you install the Windows SDK. For information about installing the Windows SDK, see http://go.microsoft.com/fwlink/?LinkId=81029.

To edit the machine.config file using the Service Configuration Editor

  1. Open Service Configuration Editor. For information about using the Service Configuration Editor, see http://go.microsoft.com/fwlink/?LinkId=83557.

  2. In the tree view pane (labeled Configuration), expand the node tree. Click the Advanced folder, click the Extensions folder, and then select the binding extensions element.

  3. In the details pane of the Binding Extensions Editor, click the binding extension that you want to delete, and then click Delete. In the following figure, MyAdapterExtension is highlighted and will be deleted.

    Service configuration editor with added extension.

  4. Close the Service Configuration Editor.

See Also

Tasks

How to Deploy an Adapter

Concepts

Deployment

� 2014 Microsoft Corporation. All rights reserved.


Creating a Deployment Package

During the development cycle, you can build, debug, and run your adapter within Visual Studio. The output of an adapter solution is a DLL assembly. You can build your adapter solution using Visual Studio IDE or use the devenv.exe scripts to create an adapter assembly. Once the adapter is developed and it is ready for use within the adapter consumer's environment, you must create a deployment package that allows the adapter to be installed in test and production environments.

You can include a Visual Studio Setup and Deployment project within the solution. This can be used to automatically generate an .msi file as part of the solution build.

Note
You can prevent the Setup and Deployment project from building each time you build the solution on your local workstation by excluding it through the Configuration Manager (on the Build menu) within Visual Studio .NET. If you exclude a project from a solution build using this method, you do not affect the source controlled solution file. Changes are maintained within the solution user option file, which is developer-specific and not under source control.

Whenever new projects are added to your solution you must remember to update and configure the deployment project to ensure that the output of the new project is included within the .msi file and that any project-specific installation steps are performed.

It is not enough to just install the output of the adapter project on the user's computer. The adapter needs to be installed in global assembly cache (GAC) and the machine.config file needs to be updated to register the adapter with WCF.

Following is a sample custom action that can be used to register or unregister an adapter with WCF.

Copy Code
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration.Install;

using System.Reflection;
using System.ServiceModel.Configuration;
using System.Diagnostics;
using System.Configuration;

namespace Microsoft.Adapters.Samples.EchoV2
{
    //Custom action to register the adapter with WCF configuration in machine.config

    //<system.serviceModel>
    //  <extensions>
    //    <bindingElementExtensions>
    //      <add name="{BINDINGELEM_NAME}" type="{BINDINGELEM_TYPE}, {Assembly Information}" />
    //    </bindingElementExtensions>
    //    <bindingExtensions>
    //      <add name="{BINDING_NAME}" type="{BINDING_TYPE}, {Assembly Information}" />
    //    </bindingExtensions>
    //  </extensions>
    //  <client>
    //    <endpoint binding="{BINDING_NAME}" contract="IMetadataExchange" name="{BINDING_SCHEME}" />
    //  </client>
    //</system.serviceModel>

    [RunInstaller(true)]
    public partial class WCFLOBAdapterInstaller : Installer
    {
        private Assembly adapterAssembly;
        private Type bindingSectionType;
        private Type bindingElementExtensionType;
        const string INSTALLER_PARM_INSTALLDIR = "INSTALLDIR";
        const string BINDING_ASSEMBLY_NAME = "Microsoft.Adapters.Samples.EchoV2.EchoAdapter.dll";
        const string BINDINGELEM_NAME = "echoAdapterV2";
        const string BINDINGELEM_TYPE = "Microsoft.Adapters.Samples.EchoV2.EchoAdapterBindingElementExtensionElement";
        const string BINDING_NAME = "echoAdapterBindingV2";
        const string BINDING_TYPE = "Microsoft.Adapters.Samples.EchoV2.EchoAdapterBindingCollectionElement";
        const string BINDING_SCHEME = "echov2";

        /// <summary>
        /// Constructor - initialize the components and register the event handlers
        /// </summary>
        public WCFLOBAdapterInstaller()
        {
            InitializeComponent();
            this.AfterInstall += new InstallEventHandler(AfterInstallEventHandler);
            this.BeforeUninstall += new InstallEventHandler(BeforeUninstallEventHandler);
        }

        /// <summary>
        /// Add the WCF configuration information in machine.config when installing the adapter.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void AfterInstallEventHandler(object sender, InstallEventArgs e)
        {
            try
            {
                Debug.Assert(this.Context != null, "Context of this installation is null.");
                string path = this.Context.Parameters[INSTALLER_PARM_INSTALLDIR] + BINDING_ASSEMBLY_NAME;
                adapterAssembly = Assembly.LoadFrom(path);
                Debug.Assert(adapterAssembly != null, "Adapter assembly is null.");
                bindingSectionType = adapterAssembly.GetType(BINDING_TYPE, true);
                Debug.Assert(bindingSectionType != null, "Binding type is null.");
                bindingElementExtensionType = adapterAssembly.GetType(BINDINGELEM_TYPE, true);
                Debug.Assert(bindingElementExtensionType != null, "Binding element extension type is null.");
                AddMachineConfigurationInfo();
            }
            catch (Exception ex)
            {
                throw new InstallException("Error while adding adapter configuration information. " + ex.InnerException.Message);
            }
        }

        /// <summary>
        /// Registers the adapter with the WCF configuration
        /// NOTE: The
        /// </summary>
        public void AddMachineConfigurationInfo()
        {
            System.Configuration.Configuration config = ConfigurationManager.OpenMachineConfiguration();
            Debug.Assert(config != null, "Machine.Config returned null");
            // add <client><endpoint>
            ServiceModelSectionGroup sectionGroup = config.GetSectionGroup("system.serviceModel") as ServiceModelSectionGroup;
            if (sectionGroup != null)
            {

                bool channelEndpointElementExists = false;
                // this call can throw an exception if there is problem
                // loading endpoint configurations - e.g. each endpoint
                // tries to load binding which in turn loads the DLL
                ClientSection clientSection = sectionGroup.Client;
                foreach (ChannelEndpointElement elem in clientSection.Endpoints)
                {
                    if (elem.Binding.Equals(BINDING_NAME, StringComparison.OrdinalIgnoreCase) && elem.Name.Equals(BINDING_SCHEME, StringComparison.OrdinalIgnoreCase) && elem.Contract.Equals("IMetadataExchange", StringComparison.OrdinalIgnoreCase))
                    {
                        channelEndpointElementExists = true;
                        break;
                    }
                }
                if (!channelEndpointElementExists)
                {
                    Debug.WriteLine("Adding ChannelEndpointElement for : " + BINDING_NAME);
                    ChannelEndpointElement elem = new ChannelEndpointElement();
                    elem.Binding = BINDING_NAME;
                    elem.Name = BINDING_SCHEME;
                    elem.Contract = "IMetadataExchange";
                    sectionGroup.Client.Endpoints.Add(elem);
                    Debug.WriteLine("Added ChannelEndpointElement for : " + BINDING_NAME);
                }

                // add <bindingElementExtension>
                if (!sectionGroup.Extensions.BindingElementExtensions.ContainsKey(BINDINGELEM_NAME))
                {
                    ExtensionElement ext = new ExtensionElement(BINDINGELEM_NAME, bindingElementExtensionType.FullName + "," + bindingElementExtensionType.Assembly.FullName);
                    sectionGroup.Extensions.BindingElementExtensions.Add(ext);
                }

                // add <bindingExtension>
                if (!sectionGroup.Extensions.BindingExtensions.ContainsKey(BINDING_NAME))
                {
                    ExtensionElement ext = new ExtensionElement(BINDING_NAME, bindingSectionType.FullName + "," + bindingSectionType.Assembly.FullName);
                    sectionGroup.Extensions.BindingExtensions.Add(ext);
                }

                config.Save();
            }
            else throw new InstallException("Machine.Config doesn't contain system.serviceModel node");
        }

        /// <summary>
        /// Remove the machine configuration information when uninstalling the adapter
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BeforeUninstallEventHandler(object sender, InstallEventArgs e)
        {
            try
            {
                RemoveMachineConfigurationInfo();
            }
            catch (Exception ex)
            {
                throw new InstallException("Error while removing adapter configuration information" + ex.InnerException.Message);
            }
        }

        /// <summary>
        /// Unregisters the adapter with WCF configuration
        /// </summary>
        public void RemoveMachineConfigurationInfo()
        {
            System.Configuration.Configuration config = ConfigurationManager.OpenMachineConfiguration();
            Debug.Assert(config != null, "Machine.Config returned null");
            ServiceModelSectionGroup sectionGroup = config.GetSectionGroup("system.serviceModel") as ServiceModelSectionGroup;
            ChannelEndpointElement elemToRemove = null;
            if (sectionGroup != null)
            {
                // Remove <client><endpoint>
                foreach (ChannelEndpointElement elem in sectionGroup.Client.Endpoints)
                {
                    if (elem.Binding.Equals(BINDING_NAME, StringComparison.OrdinalIgnoreCase) && elem.Name.Equals(BINDING_SCHEME, StringComparison.OrdinalIgnoreCase) && elem.Contract.Equals("IMetadataExchange", StringComparison.OrdinalIgnoreCase))
                    {
                        elemToRemove = elem;
                        break;
                    }
                }
                if (elemToRemove != null)
                {
                    Debug.WriteLine("Removing ChannelEndpointElement for : " + BINDING_NAME);
                    sectionGroup.Client.Endpoints.Remove(elemToRemove);
                    Debug.WriteLine("Removed ChannelEndpointElement for : " + BINDING_NAME);
                }
                // Remove <bindingExtension> for this adapter
                if (sectionGroup.Extensions.BindingExtensions.ContainsKey(BINDING_NAME))
                {
                    sectionGroup.Extensions.BindingExtensions.RemoveAt(BINDING_NAME);
                }
                // Remove <bindingElementExtension> for this adapter
                if (sectionGroup.Extensions.BindingElementExtensions.ContainsKey(BINDINGELEM_NAME))
                {
                    sectionGroup.Extensions.BindingElementExtensions.RemoveAt(BINDINGELEM_NAME);
                }
                config.Save();
            }
            else
            {
                throw new InstallException("Machine.Config doesn't contain system.serviceModel node");
            }
        }

        /// <summary>
        /// Use this for testing outside of the Setup project
        /// </summary>
        /// <param name="assemblyDirectory">Directory where the adapter assembly is located</param>
        public static void TestAddConfiguration(string assemblyDirectory)
        {
            WCFLOBAdapterInstaller action = new WCFLOBAdapterInstaller();
            InstallContext context = new InstallContext();
            // In the Setup project, this is set by selecting custom action
            // and in Properties setting /INSTALLDIR="[TARGETDIR]\" for CustomActionData
            context.Parameters.Add("INSTALLDIR", assemblyDirectory);
            action.Context = context;
            action.AfterInstallEventHandler(null, null);
        }

        /// <summary>
        /// Use this for testing outside of the Setup project
        /// </summary>
        /// <param name="assemblyDirectory">Directory where the adapter assembly is located</param>
        public static void TestRemoveConfiguration(string assemblyDirectory)
        {
            WCFLOBAdapterInstaller action = new WCFLOBAdapterInstaller();
            InstallContext context = new InstallContext();
            // In the Setup project, this is set by selecting custom action
            // and in Properties setting /INSTALLDIR="[TARGETDIR]\" for CustomActionData
            context.Parameters.Add("INSTALLDIR", assemblyDirectory);
            action.Context = context;
            action.BeforeUninstallEventHandler(null, null);
        }
    }
}

If you want to explore a sample adapter with a deployment package, you can download a completed Echo Adapter including test code and installation script at http://go.microsoft.com/fwlink/?LinkID=96184.

See Also

Tasks

How to Deploy an Adapter
How to Undeploy an Adapter

� 2014 Microsoft Corporation. All rights reserved.


Troubleshooting

This section describes troubleshooting information for the WCF LOB Adapter SDK. It includes problems and resolutions for performance counters and for tracing.

In This Section

  • Tracing an Adapter

  • Using Performance Counters

  • Generating WSDL

� 2014 Microsoft Corporation. All rights reserved.


Tracing an Adapter

WCF LOB Adapter SDK tracing is built on top of Systems.Diagnostics. You use Microsoft.ServiceModel.Channels trace source for the WCF LOB Adapter SDK runtime. You use Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse trace source for Add Adapter Service Reference Plug-in and Consume Adapter Service Add-in. WCF traces are written to the source named System.ServiceModel.

The adapter developer can provide a trace source name for the adapter using Microsoft.ServiceModel.Channels.Common.AdapterTrace class. The Adapter Development Wizard generates a trace wrapper class that can be used by the adapter developer to provide instrumentation in the adapter code.

For information about WCF tracing, see "Tracing" at http://go.microsoft.com/fwlink/?LinkID=91242.

For information about analyzing traces in WCF, see "Service Trace Viewer Tool (SvcTraceViewer.exe)" at http://go.microsoft.com/fwlink/?LinkID=88991.

Sample Trace Wrapper Utility Class

Copy Code
    public class EchoAdapterUtilities
    {
        static AdapterTrace trace = new AdapterTrace("Microsoft.Adapters.Samples.Echo.EchoAdapter");

        /// <summary>
        /// Gets the AdapterTrace
        /// </summary>
        public static AdapterTrace Trace
        {
            get
            {
                return trace;
            }
        }
    }

The previous utility class can then be used by the adapter developer throughout the adapter code to provide instrumentation data for the adapter consumers.

EchoAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Information, "EchoAdapterConnection::Open", "Connection successfully opened!");

Enabling Tracing for the Adapter and WCF LOB Adapter SDK Runtime

You can enable tracing provided in the WCF LOB Adapter SDK by adding the following section in the app.config file of the application using the adapter.

Copy Code
  <system.diagnostics>
    <sources>
      <source name="Microsoft.Adapters.Samples.Echo.EchoAdapter" switchValue="Verbose">
        <listeners>
          <add name="xmlTrace" />
        </listeners>
      </source>
      <source name="Microsoft.ServiceModel.Channels" switchValue="Verbose">
        <listeners>
          <add name="xmlTrace" />
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add initializeData="C:\logs\TestEchoAdapter_Browse.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="xmlTrace">
        <filter type="" />
      </add>
    </sharedListeners>
    <trace autoflush="true" />
  </system.diagnostics>

You can use the add element to specify the name and type of the trace listener you want to use. In our example configuration, we named the Listener "xmlTrace" and added the standard .NET Framework trace listener (System.Diagnostics.XmlWriterTraceListener) as the type we want to use. You can add any number of trace listeners for each source. For example, in the following examples, we also added another listener named "textTrace" that uses the .NET Framework trace listener System.Diagnostics.TextWriterTraceListener. If the trace listener emits the trace to a file, you must specify the output file location and name in the configuration file. This is done by setting initializeData to the name of the file for that listener.

Enabling Tracing for the Add Adapter Service Reference Plug-in

You can enable tracing for this plug-in by adding the following section in the devenv.exe.config file located in <installation drive>:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE.

Copy Code
  <system.diagnostics>
     <sources>
      <source name="Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse" switchValue="Verbose, ActivityTracing">
        <listeners>
          <add name="textTrace"/>
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add initializeData="C:\logs\aasr.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="xmlTrace">
        <filter type="" />
      </add>
      <add initializeData="C:\logs\aasr.log" type="System.Diagnostics.TextWriterTraceListener" name="textTrace">
        <filter type="" />
      </add>
    </sharedListeners>
    <trace autoflush="true" indentsize="4" />
  </system.diagnostics>

Enabling Tracing for the Consume Adapter Service Add-in

You can enable tracing for this add-in by adding the following section in the BTSNTSVC.exe.config file located in <installation drive>:\Program Files\Microsoft BizTalk Server <version>.

Copy Code
  <system.diagnostics>
     <sources>
      <source name="Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse" switchValue="Verbose, ActivityTracing">
        <listeners>
          <add name="textTrace"/>
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add initializeData="C:\logs\aasr.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="xmlTrace">
        <filter type="" />
      </add>
      <add initializeData="C:\logs\aasr.log" type="System.Diagnostics.TextWriterTraceListener" name="textTrace">
        <filter type="" />
      </add>
    </sharedListeners>
    <trace autoflush="true" indentsize="4" />
  </system.diagnostics>

See Also

Concepts

Troubleshooting

� 2014 Microsoft Corporation. All rights reserved.


Using Performance Counters

You can use the performance tool to automatically collect performance data from local or remote computers that are running the WCF LOB Adapter SDK. You can define start and stop times for automatic log generation, manage multiple logging sessions from a single console window, and set an alert on a computer that enables a message to be sent or a log to be started when your criteria are met. This topic discusses the performance counters for the WCF LOB Adapter SDK.

Performance Objects and Counters

When you install the WCF LOB Adapter SDK, a single performance object named "ServiceModel Adapters" is installed. The performance object contains a number of different performance counters. A performance object measures the activity for a given resource, application, or service. Performance objects and counters obtain performance data from the WCF LOB Adapter SDK, features, and services on your computer as they are used. This performance data is typically named for the component that generates the data. Performance counters are used for gathering specific information or data for a given performance object.

When selecting counters from the ServiceModel Adapters performance object, you can choose to only monitor information specific adapter instances by selecting the instance from the Select Instances list. Each adapter instance will be listed in the format of <ProcessId>@<ConnectionString>. For example, 115@echo:||host|temp?echoprefix=pre indicates the echo adapter instance running in process 115.

For information about performance counters in WCF, see "WCF Performance Counters" at http://go.microsoft.com/fwlink/?LinkID=87245.

ServiceModel Adapters Metadata Cache Performance Counters

The following table summarizes the cache performance counters that can be used to monitor the WCF LOB Adapter SDK.

Counter | Description
% Cache read hits | Percentage of metadata read hits in the adapter cache.
Metadata Resolved | Number of metadata items resolved by the adapter.
% Cache full | Percentage of the cache size limit in use.

ServiceModel Adapters Connection Performance Counters

The following table summarizes the connection performance counters that can be used to monitor the WCF LOB Adapter SDK.

Counter | Description
Aborted Connections | Number of aborted target system connections.
In-use Connections | Number of currently in-use target system connections.
Opened Connections | Number of currently open target system connections.
Ready Connections | Number of available target system connections.
Pending Connection Requests | Number of pending target system connection requests.

ServiceModel Adapters Message Exchange Performance Counters

The following table summarizes the message exchange performance counters that can be used to monitor the WCF LOB Adapter SDK.

Counter | Description
Outbound Calls | Number of outbound calls from the adapter to the target system.
Outbound Calls/sec | Number of outbound calls per second from the adapter to the target system.

See Also

Concepts

Troubleshooting

� 2014 Microsoft Corporation. All rights reserved.


Generating WSDL

During development of an adapter, or when the metadata that is returned from the LOB system changes, it is often useful to view the Web Services Description Language (WSDL) that is returned from the adapter to verify that the metadata for your operations is generated correctly. There are several methods to generate the WSDL. This topic provides information about using svcutil.exe and the Metadata Search Browse control.

Using svcutil.exe

Svcutil.exe is a command-line utility shipped with the Windows SDK that accepts a URL and optional switches, and returns WSDL. The following is an example of using svcutil.exe to return the WSDL of the Echo Adapter:

Svcutil.exe “echov2://lobhostname/lobapplication?enableAuthentication=False” /target:metadata

This saves the metadata as Microsoft.Adapters.Samples.Echov2.wsdl. If your adapter has many operations, you can choose to return only the desired operations by using ‘op=OperationName’ as part of the URI. The following is an example of using this to return only the EchoStrings information:

Copy Code
SvcUtil.exe “echov2://lobhostname/lobapplication?enableAuthentication=False&op=Echo/EchoStrings” /target:metadata

Using the Metadata Search Browse Control

The Metadata Search Browse control is a Windows control that is used in the wizards included in WCF LOB Adapter SDK. You can add this control to any Windows Forms project in Visual Studio, and use it to select your adapter, the desired operations, and then generate the WSDL.

To use the control in a Windows Forms–based application, follow these steps.

  1. Open a Visual Studio command prompt.

  2. On the File menu, select New, and then click Project.

  3. In the New Project dialog box, select Windows Application from Templates. Enter a project name, and then click OK.

  4. Open the Toolbox, expand Common Controls, right-click the Toolbox, and then click Choose Items.

  5. In the Choose Toolbox Items dialog box, find MetadataUserControl on the .NET Framework Components tab, select the check box beside this item, and then click OK.

  6. From the Toolbox, drag the MetadataUserControl to Form1. You may need to resize the form to see the entire control. You should be able to run the project now and verify that the control is functional, allowing you to select an adapter and operations.

  7. To generate WSDL by using this control, you must add code to your form to call the GetWsdl method of this control. The following example demonstrates how to call GetWsdl and save the data to file:

    C# Copy Code
    private void button1_Click(object sender, EventArgs e)
{
   ServiceDescription sd = mdUserControl.GetWsdl();
   FileStream myFileStream = new FileStream(tbWsdlFileName.Text, FileMode.OpenOrCreate, FileAccess.Write);
   StreamWriter myStreamWriter = new StreamWriter(myFileStream);
   sd.Write(myStreamWriter);
   myStreamWriter.Flush();
   myStreamWriter.Close();
   MessageBox.Show("WSDL file " + tbWsdlFileName.Text + " is created.");
}

See Also

Concepts

Troubleshooting

� 2014 Microsoft Corporation. All rights reserved.


Technical Reference

This section contains the managed reference content for the WCF LOB Adapter SDK

� 2014 Microsoft Corporation. All rights reserved.


WCF LOB Adapter SDK Managed Reference

Insert introduction here.

Section Heading

Insert section body here.

Subsection Heading

Insert subsection body here.

� 2014 Microsoft Corporation. All rights reserved.


Class Library

Namespaces

Namespace
Microsoft.ServiceModel.Channels
Microsoft.ServiceModel.Channels.Common
Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse

© 2014 Microsoft Corporation. All rights reserved.


Microsoft.ServiceModel.Channels Namespace
Contains interfaces, base classes, and enumeration types that are used when building an adapter by using the WCF LOB Adapter SDK.

Classes

Class | Description
AdapterAuthorizationPolicy |
AdapterEndpointBehavior | Behavior used to implement the AdapterSecurityBridge.
AdapterServiceAuthorizationManager | Implementation of ServiceAuthorizationManager.
AdapterServiceCredentials | Implementation of ServiceCredentials.
BindingPropertyDirectionAttribute |
InboundActionCollection | Defines a list of inbound actions that are specific to the target URI.
InboundActionElement | Represents a configuration element that specifies the InboundActionEndpointBehavior for passing the operation actions to the adapter's inbound handler implementation.
InboundActionEndpointBehavior | Extends the runtime behavior for an endpoint to copy all of the contract's action(s) for an inbound service to the BindingParameterCollection so that it can be used by the adapter at runtime to know what operations to listen to.
MetadataRetrievalClient | Is a metadata client proxy used for browsing, searching, and retrieving metadata from an adapter binding.
MetadataRetrievalNode | Represents a category or operation node returned by IMetadataBrowseHandler.Browse and IMetadataSearchHandler.Search methods.

Interfaces

Interface | Description
IAdapterBindingCapabilities | Represents an interface that adapter bindings must implement to describe and advertise the capabilities that adapter clients and services may require, in addition to those defined in the standard IBindingDeliveryCapabilities interface.
IMetadataRetrievalContract | Represents the contract for browsing, searching, and retrieving metadata from adapters developed using the WCF LOB Adapter SDK.

Enumerations

Enumeration | Description
AdapterSecurityBridgeType | Enumeration used to determine where to obtain credentials provided by the client.
MetadataRetrievalNodeDirections | Represents the direction of the parent message of the metadata node that is being retrieved. The direction can be either inbound or outbound or both.


AdapterAuthorizationPolicy Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterAuthorizationPolicy

Syntax

Visual Basic
Public Class AdapterAuthorizationPolicy
    Implements IAuthorizationPolicy, IAuthorizationComponent
C#
public class AdapterAuthorizationPolicy : IAuthorizationPolicy, IAuthorizationComponent
C++
public ref class AdapterAuthorizationPolicy : IAuthorizationPolicy, IAuthorizationComponent
J#
public class AdapterAuthorizationPolicy implements IAuthorizationPolicy, IAuthorizationComponent
JScript
public class AdapterAuthorizationPolicy implements IAuthorizationPolicy, IAuthorizationComponent

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.AdapterAuthorizationPolicy

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterAuthorizationPolicy Members
Microsoft.ServiceModel.Channels Namespace


AdapterAuthorizationPolicy Members
See Also Constructors Methods Properties
[image]

The following tables list the members exposed by the AdapterAuthorizationPolicy type.

Public Constructors

Name | Description
AdapterAuthorizationPolicy | Overloaded.
Top

Public Properties

 | Name | Description
public property | Id | Guid value representing an instance.
public property | Issuer | Gets a claim set that represents the issuer of the authorization policy.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | Evaluate |
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

AdapterAuthorizationPolicy Class
Microsoft.ServiceModel.Channels Namespace


AdapterAuthorizationPolicy Constructor
[image]

Overload List

Name | Description
AdapterAuthorizationPolicy () |
AdapterAuthorizationPolicy (ClaimSet) |

See Also

Reference

AdapterAuthorizationPolicy Class
AdapterAuthorizationPolicy Members
Microsoft.ServiceModel.Channels Namespace


AdapterAuthorizationPolicy Constructor ()
[image]

Initializes a new instance of the AdapterAuthorizationPolicy Class.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New AdapterAuthorizationPolicy

Syntax

Visual Basic
Public Sub New
C#
public AdapterAuthorizationPolicy ()
C++
public:
AdapterAuthorizationPolicy ()
J#
public AdapterAuthorizationPolicy ()
JScript
public function AdapterAuthorizationPolicy ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterAuthorizationPolicy Class
AdapterAuthorizationPolicy Members
Microsoft.ServiceModel.Channels Namespace


AdapterAuthorizationPolicy Constructor (ClaimSet)
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim userClaimSet As ClaimSet

Dim instance As New AdapterAuthorizationPolicy(userClaimSet)

Syntax

Visual Basic
Public Sub New ( _
    userClaimSet As ClaimSet _
)
C#
public AdapterAuthorizationPolicy (
    ClaimSet userClaimSet
)
C++
public:
AdapterAuthorizationPolicy (
    ClaimSet^ userClaimSet
)
J#
public AdapterAuthorizationPolicy (
    ClaimSet userClaimSet
)
JScript
public function AdapterAuthorizationPolicy (
    userClaimSet : ClaimSet
)

Parameters

userClaimSet

The claim set used to initialize the instance.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterAuthorizationPolicy Class
AdapterAuthorizationPolicy Members
Microsoft.ServiceModel.Channels Namespace


AdapterAuthorizationPolicy Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | Evaluate |
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

AdapterAuthorizationPolicy Class
Microsoft.ServiceModel.Channels Namespace


AdapterAuthorizationPolicy.Evaluate Method
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterAuthorizationPolicy
Dim evaluationContext As EvaluationContext
Dim state As Object
Dim returnValue As Boolean

returnValue = instance.Evaluate(evaluationContext, state)

Syntax

Visual Basic
Public Function Evaluate ( _
    evaluationContext As EvaluationContext, _
    ByRef state As Object _
) As Boolean
C#
public bool Evaluate (
    EvaluationContext evaluationContext,
    ref Object state
)
C++
public:
virtual bool Evaluate (
    EvaluationContext^ evaluationContext,
    Object^% state
) sealed
J#
public final boolean Evaluate (
    EvaluationContext evaluationContext,
    /** @ref */ Object state
)
JScript

Parameters

evaluationContext

An EvaluationContext that contains the claim set that the authorization policy evaluates.

state

An Object, passed by reference that represents the custom state for this authorization policy

Return Value

Returns false if the claim set has not been initialized, otherwise returns true.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterAuthorizationPolicy Class
AdapterAuthorizationPolicy Members
Microsoft.ServiceModel.Channels Namespace


AdapterAuthorizationPolicy Properties
[image]

Public Properties

 | Name | Description
public property | Id | Guid value representing an instance.
public property | Issuer | Gets a claim set that represents the issuer of the authorization policy.

See Also

Reference

AdapterAuthorizationPolicy Class
Microsoft.ServiceModel.Channels Namespace


AdapterAuthorizationPolicy.Id Property
[image]

Guid value representing an instance.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterAuthorizationPolicy
Dim value As String

value = instance.Id

Syntax

Visual Basic
Public ReadOnly Property Id As String
C#
public string Id { get; }
C++
public:
virtual property String^ Id {
    String^ get () sealed;
}
J#
/** @property */
public final String get_Id ()
JScript
public final function get Id () : String

Property Value

Returns String.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterAuthorizationPolicy Class
AdapterAuthorizationPolicy Members
Microsoft.ServiceModel.Channels Namespace


AdapterAuthorizationPolicy.Issuer Property
[image]

Gets a claim set that represents the issuer of the authorization policy.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterAuthorizationPolicy
Dim value As ClaimSet

value = instance.Issuer

Syntax

Visual Basic
Public ReadOnly Property Issuer As ClaimSet
C#
public ClaimSet Issuer { get; }
C++
public:
virtual property ClaimSet^ Issuer {
    ClaimSet^ get () sealed;
}
J#
/** @property */
public final ClaimSet get_Issuer ()
JScript
public final function get Issuer () : ClaimSet

Property Value

Returns ClaimSet.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterAuthorizationPolicy Class
AdapterAuthorizationPolicy Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior Class
See Also Members
[image]

Behavior used to implement the AdapterSecurityBridge.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEndpointBehavior

Syntax

Visual Basic
Public Class AdapterEndpointBehavior
    Inherits BehaviorExtensionElement
    Implements IEndpointBehavior
C#
public class AdapterEndpointBehavior : BehaviorExtensionElement, IEndpointBehavior
C++
public ref class AdapterEndpointBehavior : public BehaviorExtensionElement, IEndpointBehavior
J#
public class AdapterEndpointBehavior extends BehaviorExtensionElement implements IEndpointBehavior
JScript
public class AdapterEndpointBehavior extends BehaviorExtensionElement implements IEndpointBehavior

Remarks

Overrides service instance creation so that client credentials can be passed to the adapter for use in authentication to LOB systems.

Inheritance Hierarchy

System.Object
System.Configuration.ConfigurationElement
System.ServiceModel.Configuration.ServiceModelExtensionElement
System.ServiceModel.Configuration.BehaviorExtensionElement
Microsoft.ServiceModel.Channels.AdapterEndpointBehavior

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior Members
See Also Constructors Methods Properties
[image]

Behavior used to implement the AdapterSecurityBridge.

The following tables list the members exposed by the AdapterEndpointBehavior type.

Public Constructors

Name | Description
AdapterEndpointBehavior |
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | AdapterSecurityBridgeType | Gets or sets the AdapterSecurityBridgeType specific to the instance.
public property | BehaviorType | Overridden.
public property | ConfigurationElementName | (inherited from ServiceModelExtensionElement)
public property | ElementInformation | (inherited from ConfigurationElement)
public property | LockAllAttributesExcept | (inherited from ConfigurationElement)
public property | LockAllElementsExcept | (inherited from ConfigurationElement)
public property | LockAttributes | (inherited from ConfigurationElement)
public property | LockElements | (inherited from ConfigurationElement)
public property | LockItem | (inherited from ConfigurationElement)
public property | PasswordHeaderName | Gets or sets the HTTP header that will contain the username.
public property | UserNameHeaderName | Gets or sets the HTTP header that will contain the user name.
Top

Protected Properties

 | Name | Description
protected property | EvaluationContext | (inherited from ConfigurationElement)
protected property | Properties | Overridden.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | AddBindingParameters |
public method | ApplyClientBehavior |
public method | ApplyDispatchBehavior |
public method | CopyFrom | (inherited from ServiceModelExtensionElement)
public method | Equals | Overridden. (inherited from Object)
public method | GetHashCode | Overridden. (inherited from Object)
public method | GetType | (inherited from Object)
public method | IsReadOnly | (inherited from ConfigurationElement)
public method | ToString | (inherited from Object)
public method | Validate |
Top

Protected Methods

 | Name | Description
protected method | CreateBehavior | Overridden.
protected method | Finalize | (inherited from Object)
protected method | IsModified | Overridden. (inherited from ConfigurationElement)
protected method | ListErrors | (inherited from ConfigurationElement)
protected method | MemberwiseClone | (inherited from Object)
protected method | OnDeserializeUnrecognizedAttribute | (inherited from ConfigurationElement)
protected method | OnDeserializeUnrecognizedElement | (inherited from ConfigurationElement)
protected method | OnRequiredPropertyNotFound | (inherited from ConfigurationElement)
protected method | PostDeserialize | (inherited from ConfigurationElement)
protected method | PreSerialize | (inherited from ConfigurationElement)
protected method | SerializeElement | Overridden. (inherited from ConfigurationElement)
protected method | SetPropertyValue | (inherited from ConfigurationElement)
Top

See Also

Reference

AdapterEndpointBehavior Class
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior Constructor
[image]

Initializes a new instance of the AdapterEndpointBehavior Class.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New AdapterEndpointBehavior

Syntax

Visual Basic
Public Sub New
C#
public AdapterEndpointBehavior ()
C++
public:
AdapterEndpointBehavior ()
J#
public AdapterEndpointBehavior ()
JScript
public function AdapterEndpointBehavior ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | AddBindingParameters |
public method | ApplyClientBehavior |
public method | ApplyDispatchBehavior |
public method | CopyFrom | (inherited from ServiceModelExtensionElement)
public method | Equals | Overridden. (inherited from Object)
public method | GetHashCode | Overridden. (inherited from Object)
public method | GetType | (inherited from Object)
public method | IsReadOnly | (inherited from ConfigurationElement)
public method | ToString | (inherited from Object)
public method | Validate |

Protected Methods

 | Name | Description
protected method | CreateBehavior | Overridden.
protected method | Finalize | (inherited from Object)
protected method | IsModified | Overridden. (inherited from ConfigurationElement)
protected method | ListErrors | (inherited from ConfigurationElement)
protected method | MemberwiseClone | (inherited from Object)
protected method | OnDeserializeUnrecognizedAttribute | (inherited from ConfigurationElement)
protected method | OnDeserializeUnrecognizedElement | (inherited from ConfigurationElement)
protected method | OnRequiredPropertyNotFound | (inherited from ConfigurationElement)
protected method | PostDeserialize | (inherited from ConfigurationElement)
protected method | PreSerialize | (inherited from ConfigurationElement)
protected method | SerializeElement | Overridden. (inherited from ConfigurationElement)
protected method | SetPropertyValue | (inherited from ConfigurationElement)

See Also

Reference

AdapterEndpointBehavior Class
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.AddBindingParameters Method
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEndpointBehavior
Dim endpoint As ServiceEndpoint
Dim bindingParameters As BindingParameterCollection

instance.AddBindingParameters(endpoint, bindingParameters)

Syntax

Visual Basic
Public Sub AddBindingParameters ( _
    endpoint As ServiceEndpoint, _
    bindingParameters As BindingParameterCollection _
)
C#
public void AddBindingParameters (
    ServiceEndpoint endpoint,
    BindingParameterCollection bindingParameters
)
C++
public:
virtual void AddBindingParameters (
    ServiceEndpoint^ endpoint,
    BindingParameterCollection^ bindingParameters
) sealed
J#
public final void AddBindingParameters (
    ServiceEndpoint endpoint,
    BindingParameterCollection bindingParameters
)
JScript
public final function AddBindingParameters (
    endpoint : ServiceEndpoint,
    bindingParameters : BindingParameterCollection
)

Parameters

endpoint
bindingParameters

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.ApplyClientBehavior Method
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEndpointBehavior
Dim endpoint As ServiceEndpoint
Dim clientRuntime As ClientRuntime

instance.ApplyClientBehavior(endpoint, clientRuntime)

Syntax

Visual Basic
Public Sub ApplyClientBehavior ( _
    endpoint As ServiceEndpoint, _
    clientRuntime As ClientRuntime _
)
C#
public void ApplyClientBehavior (
    ServiceEndpoint endpoint,
    ClientRuntime clientRuntime
)
C++
public:
virtual void ApplyClientBehavior (
    ServiceEndpoint^ endpoint,
    ClientRuntime^ clientRuntime
) sealed
J#
public final void ApplyClientBehavior (
    ServiceEndpoint endpoint,
    ClientRuntime clientRuntime
)
JScript
public final function ApplyClientBehavior (
    endpoint : ServiceEndpoint,
    clientRuntime : ClientRuntime
)

Parameters

endpoint
clientRuntime

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.ApplyDispatchBehavior Method
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEndpointBehavior
Dim endpoint As ServiceEndpoint
Dim endpointDispatcher As EndpointDispatcher

instance.ApplyDispatchBehavior(endpoint, endpointDispatcher)

Syntax

Visual Basic
Public Sub ApplyDispatchBehavior ( _
    endpoint As ServiceEndpoint, _
    endpointDispatcher As EndpointDispatcher _
)
C#
public void ApplyDispatchBehavior (
    ServiceEndpoint endpoint,
    EndpointDispatcher endpointDispatcher
)
C++
public:
virtual void ApplyDispatchBehavior (
    ServiceEndpoint^ endpoint,
    EndpointDispatcher^ endpointDispatcher
) sealed
J#
public final void ApplyDispatchBehavior (
    ServiceEndpoint endpoint,
    EndpointDispatcher endpointDispatcher
)
JScript
public final function ApplyDispatchBehavior (
    endpoint : ServiceEndpoint,
    endpointDispatcher : EndpointDispatcher
)

Parameters

endpoint
endpointDispatcher

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.CreateBehavior Method
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim returnValue As Object

returnValue = Me.CreateBehavior

Syntax

Visual Basic
Protected Overrides Function CreateBehavior As Object
C#
protected override Object CreateBehavior ()
C++
protected:
virtual Object^ CreateBehavior () override
J#
protected Object CreateBehavior ()
JScript
protected override function CreateBehavior () : Object

Return Value

Returns Object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.Validate Method
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEndpointBehavior
Dim endpoint As ServiceEndpoint

instance.Validate(endpoint)

Syntax

Visual Basic
Public Sub Validate ( _
    endpoint As ServiceEndpoint _
)
C#
public void Validate (
    ServiceEndpoint endpoint
)
C++
public:
virtual void Validate (
    ServiceEndpoint^ endpoint
) sealed
J#
public final void Validate (
    ServiceEndpoint endpoint
)
JScript
public final function Validate (
    endpoint : ServiceEndpoint
)

Parameters

endpoint

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | AdapterSecurityBridgeType | Gets or sets the AdapterSecurityBridgeType specific to the instance.
public property | BehaviorType | Overridden.
public property | ConfigurationElementName | (inherited from ServiceModelExtensionElement)
public property | ElementInformation | (inherited from ConfigurationElement)
public property | LockAllAttributesExcept | (inherited from ConfigurationElement)
public property | LockAllElementsExcept | (inherited from ConfigurationElement)
public property | LockAttributes | (inherited from ConfigurationElement)
public property | LockElements | (inherited from ConfigurationElement)
public property | LockItem | (inherited from ConfigurationElement)
public property | PasswordHeaderName | Gets or sets the HTTP header that will contain the username.
public property | UserNameHeaderName | Gets or sets the HTTP header that will contain the user name.

Protected Properties

 | Name | Description
protected property | EvaluationContext | (inherited from ConfigurationElement)
protected property | Properties | Overridden.

See Also

Reference

AdapterEndpointBehavior Class
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.AdapterSecurityBridgeType Property
[image]

Gets or sets the AdapterSecurityBridgeType specific to the instance.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEndpointBehavior
Dim value As AdapterSecurityBridgeType

value = instance.AdapterSecurityBridgeType

instance.AdapterSecurityBridgeType = value

Syntax

Visual Basic
<ConfigurationPropertyAttribute("adapterSecurityBridgeType")> _
Public Property AdapterSecurityBridgeType As AdapterSecurityBridgeType
C#
[ConfigurationPropertyAttribute("adapterSecurityBridgeType")]
public AdapterSecurityBridgeType AdapterSecurityBridgeType { get; set; }
C++
[ConfigurationPropertyAttribute(L"adapterSecurityBridgeType")]
public:
property AdapterSecurityBridgeType AdapterSecurityBridgeType {
    AdapterSecurityBridgeType get ();
    void set (AdapterSecurityBridgeType value);
}
J#
/** @property */
public AdapterSecurityBridgeType get_AdapterSecurityBridgeType ()

/** @property */
public void set_AdapterSecurityBridgeType (AdapterSecurityBridgeType value)
JScript
public function get AdapterSecurityBridgeType () : AdapterSecurityBridgeType

public function set AdapterSecurityBridgeType (value : AdapterSecurityBridgeType)

Property Value

Returns AdapterSecurityBridgeType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.BehaviorType Property
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEndpointBehavior
Dim value As Type

value = instance.BehaviorType

Syntax

Visual Basic
Public Overrides ReadOnly Property BehaviorType As Type
C#
public override Type BehaviorType { get; }
C++
public:
virtual property Type^ BehaviorType {
    Type^ get () override;
}
J#
/** @property */
public Type get_BehaviorType ()
JScript
public override function get BehaviorType () : Type

Property Value

Returns Type.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.PasswordHeaderName Property
[image]

Gets or sets the HTTP header that will contain the username.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEndpointBehavior
Dim value As String

value = instance.PasswordHeaderName

instance.PasswordHeaderName = value

Syntax

Visual Basic
<ConfigurationPropertyAttribute("passwordHttpHeader")> _
Public Property PasswordHeaderName As String
C#
[ConfigurationPropertyAttribute("passwordHttpHeader")]
public string PasswordHeaderName { get; set; }
C++
[ConfigurationPropertyAttribute(L"passwordHttpHeader")]
public:
property String^ PasswordHeaderName {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_PasswordHeaderName ()

/** @property */
public void set_PasswordHeaderName (String value)
JScript
public function get PasswordHeaderName () : String

public function set PasswordHeaderName (value : String)

Property Value

Returns String.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.Properties Property
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As ConfigurationPropertyCollection

value = Me.Properties

Syntax

Visual Basic
Protected Overrides ReadOnly Property Properties As ConfigurationPropertyCollection
C#
protected override ConfigurationPropertyCollection Properties { get; }
C++
protected:
virtual property ConfigurationPropertyCollection^ Properties {
    ConfigurationPropertyCollection^ get () override;
}
J#
/** @property */
protected ConfigurationPropertyCollection get_Properties ()
JScript
protected override function get Properties () : ConfigurationPropertyCollection

Property Value

Returns ConfigurationPropertyCollection.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterEndpointBehavior.UserNameHeaderName Property
[image]

Gets or sets the HTTP header that will contain the user name.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEndpointBehavior
Dim value As String

value = instance.UserNameHeaderName

instance.UserNameHeaderName = value

Syntax

Visual Basic
<ConfigurationPropertyAttribute("usernameHttpHeader")> _
Public Property UserNameHeaderName As String
C#
[ConfigurationPropertyAttribute("usernameHttpHeader")]
public string UserNameHeaderName { get; set; }
C++
[ConfigurationPropertyAttribute(L"usernameHttpHeader")]
public:
property String^ UserNameHeaderName {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_UserNameHeaderName ()

/** @property */
public void set_UserNameHeaderName (String value)
JScript
public function get UserNameHeaderName () : String

public function set UserNameHeaderName (value : String)

Property Value

Returns String.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEndpointBehavior Class
AdapterEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


AdapterSecurityBridgeType Enumeration
[image]

Enumeration used to determine where to obtain credentials provided by the client.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterSecurityBridgeType

Syntax

Visual Basic
Public Enumeration AdapterSecurityBridgeType
C#
public enum AdapterSecurityBridgeType
C++
public enum class AdapterSecurityBridgeType
J#
public enum AdapterSecurityBridgeType
JScript
public enum AdapterSecurityBridgeType

Members

Member name | Description
Auto | Attempt to load credentials from ClientCredential claim set. If no credentials are found, attempt to load credentials from HTTP headers specified in UserNameHeaderName and PasswordHeaderName
ClientCredentialUsernamePassword | Attempt to load credentials from ClientCredential claim set.
HTTPUsernamePassword | Attempt to load credentials from UserNameHeaderName and PasswordHeaderName

Remarks

When an adapter is hosted in a service, such as Internet Information Services, instructs the adapter where to obtain the client credentials.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Microsoft.ServiceModel.Channels Namespace


AdapterServiceAuthorizationManager Class
See Also Members
[image]

Implementation of ServiceAuthorizationManager.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterServiceAuthorizationManager

Syntax

Visual Basic
Public Class AdapterServiceAuthorizationManager
    Inherits ServiceAuthorizationManager
C#
public class AdapterServiceAuthorizationManager : ServiceAuthorizationManager
C++
public ref class AdapterServiceAuthorizationManager : public ServiceAuthorizationManager
J#
public class AdapterServiceAuthorizationManager extends ServiceAuthorizationManager
JScript
public class AdapterServiceAuthorizationManager extends ServiceAuthorizationManager

Remarks

This will always validate the client request; actual validation should be done by the adapter when opening the connection.

Inheritance Hierarchy

System.Object
System.ServiceModel.ServiceAuthorizationManager
Microsoft.ServiceModel.Channels.AdapterServiceAuthorizationManager

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterServiceAuthorizationManager Members
Microsoft.ServiceModel.Channels Namespace


AdapterServiceAuthorizationManager Members
See Also Constructors Methods
[image]

Implementation of ServiceAuthorizationManager.

The following tables list the members exposed by the AdapterServiceAuthorizationManager type.

Public Constructors

Name | Description
AdapterServiceAuthorizationManager |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | CheckAccess | (inherited from ServiceAuthorizationManager)
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | CheckAccessCore | Overridden.
protected method | Finalize | (inherited from Object)
protected method | GetAuthorizationPolicies | (inherited from ServiceAuthorizationManager)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

AdapterServiceAuthorizationManager Class
Microsoft.ServiceModel.Channels Namespace


AdapterServiceAuthorizationManager Constructor
[image]

Initializes a new instance of the AdapterServiceAuthorizationManager Class.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New AdapterServiceAuthorizationManager

Syntax

Visual Basic
Public Sub New
C#
public AdapterServiceAuthorizationManager ()
C++
public:
AdapterServiceAuthorizationManager ()
J#
public AdapterServiceAuthorizationManager ()
JScript
public function AdapterServiceAuthorizationManager ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterServiceAuthorizationManager Class
AdapterServiceAuthorizationManager Members
Microsoft.ServiceModel.Channels Namespace


AdapterServiceAuthorizationManager Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | CheckAccess | (inherited from ServiceAuthorizationManager)
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | CheckAccessCore | Overridden.
protected method | Finalize | (inherited from Object)
protected method | GetAuthorizationPolicies | (inherited from ServiceAuthorizationManager)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

AdapterServiceAuthorizationManager Class
Microsoft.ServiceModel.Channels Namespace


AdapterServiceAuthorizationManager.CheckAccessCore Method
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim operationContext As OperationContext
Dim returnValue As Boolean

returnValue = Me.CheckAccessCore(operationContext)

Syntax

Visual Basic
Protected Overrides Function CheckAccessCore ( _
    operationContext As OperationContext _
) As Boolean
C#
protected override bool CheckAccessCore (
    OperationContext operationContext
)
C++
protected:
virtual bool CheckAccessCore (
    OperationContext^ operationContext
) override
J#
protected boolean CheckAccessCore (
    OperationContext operationContext
)
JScript
protected override function CheckAccessCore (
    operationContext : OperationContext
) : boolean

Parameters

operationContext

Return Value

Returns true.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterServiceAuthorizationManager Class
AdapterServiceAuthorizationManager Members
Microsoft.ServiceModel.Channels Namespace


AdapterServiceCredentials Class
See Also Members
[image]

Implementation of ServiceCredentials.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterServiceCredentials

Syntax

Visual Basic
Public Class AdapterServiceCredentials
    Inherits ServiceCredentials
C#
public class AdapterServiceCredentials : ServiceCredentials
C++
public ref class AdapterServiceCredentials : public ServiceCredentials
J#
public class AdapterServiceCredentials extends ServiceCredentials
JScript
public class AdapterServiceCredentials extends ServiceCredentials

Inheritance Hierarchy

System.Object
System.ServiceModel.Security.SecurityCredentialsManager
System.ServiceModel.Description.ServiceCredentials
Microsoft.ServiceModel.Channels.AdapterServiceCredentials

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterServiceCredentials Members
Microsoft.ServiceModel.Channels Namespace


AdapterServiceCredentials Members
See Also Constructors Methods Properties Explicit Interface Implementations
[image]

Implementation of ServiceCredentials.

The following tables list the members exposed by the AdapterServiceCredentials type.

Public Constructors

Name | Description
AdapterServiceCredentials |
Top

Public Properties

 | Name | Description
public property | ClientCertificate | (inherited from ServiceCredentials)
public property | IssuedTokenAuthentication | (inherited from ServiceCredentials)
public property | Peer | (inherited from ServiceCredentials)
public property | SecureConversationAuthentication | (inherited from ServiceCredentials)
public property | ServiceCertificate | (inherited from ServiceCredentials)
public property | UserNameAuthentication | (inherited from ServiceCredentials)
public property | WindowsAuthentication | (inherited from ServiceCredentials)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | (inherited from ServiceCredentials)
public method | CreateSecurityTokenManager | Overridden.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | CloneCore | Overridden.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

Explicit Interface Implementations

Name | Description
AddBindingParameters | (inherited from ServiceCredentials)
ApplyDispatchBehavior | (inherited from ServiceCredentials)
Validate | (inherited from ServiceCredentials)
Top

See Also

Reference

AdapterServiceCredentials Class
Microsoft.ServiceModel.Channels Namespace


AdapterServiceCredentials Constructor
[image]

Initializes a new instance of the AdapterServiceCredentials Class.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New AdapterServiceCredentials

Syntax

Visual Basic
Public Sub New
C#
public AdapterServiceCredentials ()
C++
public:
AdapterServiceCredentials ()
J#
public AdapterServiceCredentials ()
JScript
public function AdapterServiceCredentials ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterServiceCredentials Class
AdapterServiceCredentials Members
Microsoft.ServiceModel.Channels Namespace


AdapterServiceCredentials Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | (inherited from ServiceCredentials)
public method | CreateSecurityTokenManager | Overridden.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | CloneCore | Overridden.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

Explicit Interface Implementations

Name | Description
AddBindingParameters | (inherited from ServiceCredentials)
ApplyDispatchBehavior | (inherited from ServiceCredentials)
Validate | (inherited from ServiceCredentials)

See Also

Reference

AdapterServiceCredentials Class
Microsoft.ServiceModel.Channels Namespace


AdapterServiceCredentials.CloneCore Method
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim returnValue As ServiceCredentials

returnValue = Me.CloneCore

Syntax

Visual Basic
Protected Overrides Function CloneCore As ServiceCredentials
C#
protected override ServiceCredentials CloneCore ()
C++
protected:
virtual ServiceCredentials^ CloneCore () override
J#
protected ServiceCredentials CloneCore ()
JScript
protected override function CloneCore () : ServiceCredentials

Return Value

Returns ServiceCredentials.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterServiceCredentials Class
AdapterServiceCredentials Members
Microsoft.ServiceModel.Channels Namespace


AdapterServiceCredentials.CreateSecurityTokenManager Method
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterServiceCredentials
Dim returnValue As SecurityTokenManager

returnValue = instance.CreateSecurityTokenManager

Syntax

Visual Basic
Public Overrides Function CreateSecurityTokenManager As SecurityTokenManager
C#
public override SecurityTokenManager CreateSecurityTokenManager ()
C++
public:
virtual SecurityTokenManager^ CreateSecurityTokenManager () override
J#
public SecurityTokenManager CreateSecurityTokenManager ()
JScript
public override function CreateSecurityTokenManager () : SecurityTokenManager

Return Value

Returns SecurityTokenManager.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterServiceCredentials Class
AdapterServiceCredentials Members
Microsoft.ServiceModel.Channels Namespace


AdapterServiceCredentials Properties
[image]

Public Properties

 | Name | Description
public property | ClientCertificate | (inherited from ServiceCredentials)
public property | IssuedTokenAuthentication | (inherited from ServiceCredentials)
public property | Peer | (inherited from ServiceCredentials)
public property | SecureConversationAuthentication | (inherited from ServiceCredentials)
public property | ServiceCertificate | (inherited from ServiceCredentials)
public property | UserNameAuthentication | (inherited from ServiceCredentials)
public property | WindowsAuthentication | (inherited from ServiceCredentials)

See Also

Reference

AdapterServiceCredentials Class
Microsoft.ServiceModel.Channels Namespace


BindingPropertyDirectionAttribute Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BindingPropertyDirectionAttribute

Syntax

Visual Basic
<AttributeUsageAttribute(AttributeTargets.Property)> _
Public NotInheritable Class BindingPropertyDirectionAttribute
    Inherits Attribute
C#
[AttributeUsageAttribute(AttributeTargets.Property)]
public sealed class BindingPropertyDirectionAttribute : Attribute
C++
[AttributeUsageAttribute(AttributeTargets::Property)]
public ref class BindingPropertyDirectionAttribute sealed : public Attribute
J#
/** @attribute AttributeUsageAttribute(AttributeTargets.Property) */
public final class BindingPropertyDirectionAttribute extends Attribute
JScript
AttributeUsageAttribute(AttributeTargets.Property)
public final class BindingPropertyDirectionAttribute extends Attribute

Inheritance Hierarchy

System.Object
System.Attribute
Microsoft.ServiceModel.Channels.BindingPropertyDirectionAttribute

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BindingPropertyDirectionAttribute Members
Microsoft.ServiceModel.Channels Namespace


BindingPropertyDirectionAttribute Members
See Also Constructors Methods Properties Explicit Interface Implementations
[image]

The following tables list the members exposed by the BindingPropertyDirectionAttribute type.

Public Constructors

Name | Description
BindingPropertyDirectionAttribute |
Top

Public Properties

 | Name | Description
public property | IsInbound |
public property | IsOutbound |
public property | TypeId | (inherited from Attribute)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | Overridden. (inherited from Object)
public method | GetHashCode | Overridden. (inherited from Object)
public method | GetType | (inherited from Object)
public method | IsDefaultAttribute | (inherited from Attribute)
public method | Match | (inherited from Attribute)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

Explicit Interface Implementations

Name | Description
GetIDsOfNames | (inherited from Attribute)
GetTypeInfo | (inherited from Attribute)
GetTypeInfoCount | (inherited from Attribute)
Invoke | (inherited from Attribute)
Top

See Also

Reference

BindingPropertyDirectionAttribute Class
Microsoft.ServiceModel.Channels Namespace


BindingPropertyDirectionAttribute Constructor
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim isInbound As Boolean
Dim isOutbound As Boolean

Dim instance As New BindingPropertyDirectionAttribute(isInbound, isOutbound)

Syntax

Visual Basic
Public Sub New ( _
    isInbound As Boolean, _
    isOutbound As Boolean _
)
C#
public BindingPropertyDirectionAttribute (
    bool isInbound,
    bool isOutbound
)
C++
public:
BindingPropertyDirectionAttribute (
    bool isInbound,
    bool isOutbound
)
J#
public BindingPropertyDirectionAttribute (
    boolean isInbound,
    boolean isOutbound
)
JScript
public function BindingPropertyDirectionAttribute (
    isInbound : boolean,
    isOutbound : boolean
)

Parameters

isInbound
isOutbound

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BindingPropertyDirectionAttribute Class
BindingPropertyDirectionAttribute Members
Microsoft.ServiceModel.Channels Namespace


BindingPropertyDirectionAttribute Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | Overridden. (inherited from Object)
public method | GetHashCode | Overridden. (inherited from Object)
public method | GetType | (inherited from Object)
public method | IsDefaultAttribute | (inherited from Attribute)
public method | Match | (inherited from Attribute)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

Explicit Interface Implementations

Name | Description
GetIDsOfNames | (inherited from Attribute)
GetTypeInfo | (inherited from Attribute)
GetTypeInfoCount | (inherited from Attribute)
Invoke | (inherited from Attribute)

See Also

Reference

BindingPropertyDirectionAttribute Class
Microsoft.ServiceModel.Channels Namespace


BindingPropertyDirectionAttribute Properties
[image]

Public Properties

 | Name | Description
public property | IsInbound |
public property | IsOutbound |
public property | TypeId | (inherited from Attribute)

See Also

Reference

BindingPropertyDirectionAttribute Class
Microsoft.ServiceModel.Channels Namespace


BindingPropertyDirectionAttribute.IsInbound Property
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BindingPropertyDirectionAttribute
Dim value As Boolean

value = instance.IsInbound

Syntax

Visual Basic
Public ReadOnly Property IsInbound As Boolean
C#
public bool IsInbound { get; }
C++
public:
property bool IsInbound {
    bool get ();
}
J#
/** @property */
public boolean get_IsInbound ()
JScript
public function get IsInbound () : boolean

Property Value

Returns Boolean.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BindingPropertyDirectionAttribute Class
BindingPropertyDirectionAttribute Members
Microsoft.ServiceModel.Channels Namespace


BindingPropertyDirectionAttribute.IsOutbound Property
[image]

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BindingPropertyDirectionAttribute
Dim value As Boolean

value = instance.IsOutbound

Syntax

Visual Basic
Public ReadOnly Property IsOutbound As Boolean
C#
public bool IsOutbound { get; }
C++
public:
property bool IsOutbound {
    bool get ();
}
J#
/** @property */
public boolean get_IsOutbound ()
JScript
public function get IsOutbound () : boolean

Property Value

Returns Boolean.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BindingPropertyDirectionAttribute Class
BindingPropertyDirectionAttribute Members
Microsoft.ServiceModel.Channels Namespace


IAdapterBindingCapabilities Interface
See Also Example Members
[image]

Represents an interface that adapter bindings must implement to describe and advertise the capabilities that adapter clients and services may require, in addition to those defined in the standard IBindingDeliveryCapabilities interface.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAdapterBindingCapabilities

Syntax

Visual Basic
Public Interface IAdapterBindingCapabilities
    Inherits IBindingDeliveryCapabilities
C#
public interface IAdapterBindingCapabilities : IBindingDeliveryCapabilities
C++
public interface class IAdapterBindingCapabilities : IBindingDeliveryCapabilities
J#
public interface IAdapterBindingCapabilities extends IBindingDeliveryCapabilities
JScript
public interface IAdapterBindingCapabilities extends IBindingDeliveryCapabilities

Example

The following code example implements the AdapterBinding class.

C# Copy Code
public class EchoAdapterBinding : AdapterBinding
{
    // Scheme in binding does not have to be the same as adapter scheme.
    // Overwrite this value as appropriate.
    private const string BindingScheme = "echo";

    /// <summary>
    /// Initializes a new instance of the AdapterBinding class
    /// </summary>
    public EchoAdapterBinding()
    {
    }

    /// <summary>
    /// Returns a value indicating whether this binding supports metadata browsing.
    /// </summary>
    public override bool SupportsMetadataBrowse
    {
        get
        {
            return true;
        }
    }

    /// <summary>
    /// Returns a value indicating whether this binding supports metadata retrieval.
    /// </summary>
    public override bool SupportsMetadataGet
    {
        get
        {
            return true;
        }
    }

    /// <summary>
    /// Returns a value indicating whether this binding supports metadata searching.
    /// </summary>
    public override bool SupportsMetadataSearch
    {
        get
        {
            return false;
        }
    }
}

Remarks

An adapter built using the WCF LOB Adapter SDK is surfaced as a WCF Binding. The WCF LOB Adapter SDK provides an abstract class AdapterBinding that inherits from Binding and implements IAdapterBindingCapabilities interface. The WCF LOB Adapter Development Wizard ensures that the generated adapter binding class inherits from AdapterBinding.

The Add Adapter Service Reference Visual Studio Plug-in and the Consume Adapter Service BizTalk Project Add-in design-time tools use the adapter binding to determine the capabilities supported by the adapter.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IAdapterBindingCapabilities Members
Microsoft.ServiceModel.Channels Namespace
AdapterBinding


IAdapterBindingCapabilities Members
See Also Properties
[image]

Represents an interface that adapter bindings must implement to describe and advertise the capabilities that adapter clients and services may require, in addition to those defined in the standard IBindingDeliveryCapabilities interface.

The following tables list the members exposed by the IAdapterBindingCapabilities type.

Public Properties

 | Name | Description
public property | ConnectionUriType | Gets a value indicating the type for the Adapter's ConnectionUri object.
public property | DefaultXsdFileNamePrefix | Gets a value indicating the default XSD schema prefix.
public property | SupportsMetadataBrowse | Gets a value indicating whether the adapter binding supports metadata browsing.
public property | SupportsMetadataGet | Gets a value indicating whether this object supports metadata retrieval.
public property | SupportsMetadataSearch | Gets a value indicating whether this object supports metadata searching.
Top

See Also

Reference

IAdapterBindingCapabilities Interface
Microsoft.ServiceModel.Channels Namespace
AdapterBinding


IAdapterBindingCapabilities Properties
[image]

Public Properties

 | Name | Description
public property | ConnectionUriType | Gets a value indicating the type for the Adapter's ConnectionUri object.
public property | DefaultXsdFileNamePrefix | Gets a value indicating the default XSD schema prefix.
public property | SupportsMetadataBrowse | Gets a value indicating whether the adapter binding supports metadata browsing.
public property | SupportsMetadataGet | Gets a value indicating whether this object supports metadata retrieval.
public property | SupportsMetadataSearch | Gets a value indicating whether this object supports metadata searching.

See Also

Reference

IAdapterBindingCapabilities Interface
Microsoft.ServiceModel.Channels Namespace
AdapterBinding


IAdapterBindingCapabilities.ConnectionUriType Property
[image]

Gets a value indicating the type for the Adapter's ConnectionUri object.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAdapterBindingCapabilities
Dim value As Type

value = instance.ConnectionUriType

Syntax

Visual Basic
ReadOnly Property ConnectionUriType As Type
C#
Type ConnectionUriType { get; }
C++
property Type^ ConnectionUriType {
    Type^ get ();
}
J#
/** @property */
Type get_ConnectionUriType ()
JScript
function get ConnectionUriType () : Type

Property Value

The type for the Adapter's ConnectionUri object

Remarks

The Add Adapter Service Reference Visual Studio Plug-in and the Consume Adapter Service BizTalk Project Add-in design-time tools use the type defined in this property to set the property grid in the URI properties page.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IAdapterBindingCapabilities Interface
IAdapterBindingCapabilities Members
Microsoft.ServiceModel.Channels Namespace


IAdapterBindingCapabilities.DefaultXsdFileNamePrefix Property
[image]

Gets a value indicating the default XSD schema prefix.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAdapterBindingCapabilities
Dim value As String

value = instance.DefaultXsdFileNamePrefix

Syntax

Visual Basic
ReadOnly Property DefaultXsdFileNamePrefix As String
C#
string DefaultXsdFileNamePrefix { get; }
C++
property String^ DefaultXsdFileNamePrefix {
    String^ get ();
}
J#
/** @property */
String get_DefaultXsdFileNamePrefix ()
JScript
function get DefaultXsdFileNamePrefix () : String

Property Value

Returns String.

Remarks

The Consume Adapter Service BizTalk Project Add-in design-time tool uses the value defined in this property as the default file name prefix when creating XSD schemas.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IAdapterBindingCapabilities Interface
IAdapterBindingCapabilities Members
Microsoft.ServiceModel.Channels Namespace


IAdapterBindingCapabilities.SupportsMetadataBrowse Property
[image]

Gets a value indicating whether the adapter binding supports metadata browsing.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAdapterBindingCapabilities
Dim value As Boolean

value = instance.SupportsMetadataBrowse

Syntax

Visual Basic
ReadOnly Property SupportsMetadataBrowse As Boolean
C#
bool SupportsMetadataBrowse { get; }
C++
property bool SupportsMetadataBrowse {
    bool get ();
}
J#
/** @property */
boolean get_SupportsMetadataBrowse ()
JScript
function get SupportsMetadataBrowse () : boolean

Property Value

true if the object supports metadata browsing; otherwise, false. The default is false.

Remarks

You can use this property to determine whether a given adapter binding supports browsing of its metadata.

Note
The Consume Adapter Service Add-in and Add Adapter Service Reference Plug-in design-time tools will not load this adapter binding, if the adapter returns false as a value of this property.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IAdapterBindingCapabilities Interface
IAdapterBindingCapabilities Members
Microsoft.ServiceModel.Channels Namespace


IAdapterBindingCapabilities.SupportsMetadataGet Property
[image]

Gets a value indicating whether this object supports metadata retrieval.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAdapterBindingCapabilities
Dim value As Boolean

value = instance.SupportsMetadataGet

Syntax

Visual Basic
ReadOnly Property SupportsMetadataGet As Boolean
C#
bool SupportsMetadataGet { get; }
C++
property bool SupportsMetadataGet {
    bool get ();
}
J#
/** @property */
boolean get_SupportsMetadataGet ()
JScript
function get SupportsMetadataGet () : boolean

Property Value

true if the object supports metadata get; otherwise, false. The default is false.

Remarks

You can use this property to determine whether a given adapter binding can generate a WCF contract.

Note
The Consume Adapter Service Add-in and Add Adapter Service Reference Plug-in design-time tools will not load this adapter binding, if the adapter returns false as a value of this property.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IAdapterBindingCapabilities Interface
IAdapterBindingCapabilities Members
Microsoft.ServiceModel.Channels Namespace


IAdapterBindingCapabilities.SupportsMetadataSearch Property
[image]

Gets a value indicating whether this object supports metadata searching.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAdapterBindingCapabilities
Dim value As Boolean

value = instance.SupportsMetadataSearch

Syntax

Visual Basic
ReadOnly Property SupportsMetadataSearch As Boolean
C#
bool SupportsMetadataSearch { get; }
C++
property bool SupportsMetadataSearch {
    bool get ();
}
J#
/** @property */
boolean get_SupportsMetadataSearch ()
JScript
function get SupportsMetadataSearch () : boolean

Property Value

true if the object supports metadata searching; otherwise, false.

Remarks

You can use this property to determine whether a given adapter binding supports searching of its metadata.

Note
The search-related UI widgets are disabled in design-time Consume Adapter Service Add-in and Add Adapter Service Reference Plug-in tools, if the adapter binding returns false as a value of this property.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IAdapterBindingCapabilities Interface
IAdapterBindingCapabilities Members
Microsoft.ServiceModel.Channels Namespace


IMetadataRetrievalContract Interface
See Also Members
[image]

Represents the contract for browsing, searching, and retrieving metadata from adapters developed using the WCF LOB Adapter SDK.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataRetrievalContract

Syntax

Visual Basic
<ServiceContractAttribute(Name:="MetadataContract", Namespace:="http://schemas.microsoft.com/servicemodel/adapters/metadata")> _
<XmlSerializerFormatAttribute> _
Public Interface IMetadataRetrievalContract
C#
[ServiceContractAttribute(Name="MetadataContract", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")]
[XmlSerializerFormatAttribute]
public interface IMetadataRetrievalContract
C++
[ServiceContractAttribute(Name=L"MetadataContract", Namespace=L"http://schemas.microsoft.com/servicemodel/adapters/metadata")]
[XmlSerializerFormatAttribute]
public interface class IMetadataRetrievalContract
J#
/** @attribute ServiceContractAttribute(Name="MetadataContract", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata") */
/** @attribute XmlSerializerFormatAttribute() */
public interface IMetadataRetrievalContract
JScript
ServiceContractAttribute(Name="MetadataContract", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")
XmlSerializerFormatAttribute
public interface IMetadataRetrievalContract

Remarks

This interface is used for design-time experience to browse or search metadata and generate the WCF contract based on the selected metadata nodes. The Add Adapter Service Reference Visual Studio Plug-in or Consume Adapter Service BizTalk Project Add-in tools use this contract for communicating with the adapter to obtain metadata.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IMetadataRetrievalContract Members
Microsoft.ServiceModel.Channels Namespace


IMetadataRetrievalContract Members
See Also Methods
[image]

Represents the contract for browsing, searching, and retrieving metadata from adapters developed using the WCF LOB Adapter SDK.

The following tables list the members exposed by the IMetadataRetrievalContract type.

Public Methods

 | Name | Description
public method | Browse | Retrieves an array of MetadataRetrievalNode objects. This method will return nodes starting from the childStartIndex in absoluteName and the number of nodes returned is limited by maxChildNodes.
public method | GetMetadata | Retrieves a ServiceDescription object. The content of the ServiceDescription object is determined from the specified array of MetadataRetrievalNode.
public method | Search | Retrieves an array of MetadataRetrievalNode objects based on the specified search criteria. The method will begin at nodeId, which points to a location in the tree of metadata nodes. The contents of the array are filtered by searchCriteria and the number of nodes returned is limited by maxChildNodes.
Top

See Also

Reference

IMetadataRetrievalContract Interface
Microsoft.ServiceModel.Channels Namespace


IMetadataRetrievalContract Methods
[image]

Public Methods

 | Name | Description
public method | Browse | Retrieves an array of MetadataRetrievalNode objects. This method will return nodes starting from the childStartIndex in absoluteName and the number of nodes returned is limited by maxChildNodes.
public method | GetMetadata | Retrieves a ServiceDescription object. The content of the ServiceDescription object is determined from the specified array of MetadataRetrievalNode.
public method | Search | Retrieves an array of MetadataRetrievalNode objects based on the specified search criteria. The method will begin at nodeId, which points to a location in the tree of metadata nodes. The contents of the array are filtered by searchCriteria and the number of nodes returned is limited by maxChildNodes.

See Also

Reference

IMetadataRetrievalContract Interface
Microsoft.ServiceModel.Channels Namespace


IMetadataRetrievalContract.Browse Method
See Also Example
[image]

Retrieves an array of MetadataRetrievalNode objects. This method will return nodes starting from the childStartIndex in absoluteName and the number of nodes returned is limited by maxChildNodes.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataRetrievalContract
Dim nodeId As String
Dim childStartIndex As Integer
Dim maxChildNodes As Integer
Dim returnValue As MetadataRetrievalNode()

returnValue = instance.Browse(nodeId, childStartIndex, maxChildNodes)

Syntax

Visual Basic
<OperationContractAttribute(Action:="http://schemas.microsoft.com/servicemodel/adapters/metadata/Browse", ReplyAction:="http://schemas.microsoft.com/servicemodel/adapters/metadata/BrowseResponse")> _
Function Browse ( _
    nodeId As String, _
    childStartIndex As Integer, _
    maxChildNodes As Integer _
) As MetadataRetrievalNode()
C#
[OperationContractAttribute(Action="http://schemas.microsoft.com/servicemodel/adapters/metadata/Browse", ReplyAction="http://schemas.microsoft.com/servicemodel/adapters/metadata/BrowseResponse")]
MetadataRetrievalNode[] Browse (
    string nodeId,
    int childStartIndex,
    int maxChildNodes
)
C++
[OperationContractAttribute(Action=L"http://schemas.microsoft.com/servicemodel/adapters/metadata/Browse", ReplyAction=L"http://schemas.microsoft.com/servicemodel/adapters/metadata/BrowseResponse")]
array<MetadataRetrievalNode^>^ Browse (
    String^ nodeId,
    int childStartIndex,
    int maxChildNodes
)
J#
/** @attribute OperationContractAttribute(Action="http://schemas.microsoft.com/servicemodel/adapters/metadata/Browse", ReplyAction="http://schemas.microsoft.com/servicemodel/adapters/metadata/BrowseResponse") */
MetadataRetrievalNode[] Browse (
    String nodeId,
    int childStartIndex,
    int maxChildNodes
)
JScript
OperationContractAttribute(Action="http://schemas.microsoft.com/servicemodel/adapters/metadata/Browse", ReplyAction="http://schemas.microsoft.com/servicemodel/adapters/metadata/BrowseResponse")
function Browse (
    nodeId : String,
    childStartIndex : int,
    maxChildNodes : int
) : MetadataRetrievalNode[]

Parameters

nodeId

A string which contains the ID of the node to start browsing from.

childStartIndex

The index of the first child node to return in the result.

maxChildNodes

The maximum number child nodes allowed to be returned in the result.

Return Value

An array of MetadataRetrievalNode objects.

Example

For examples on how to use this method, see Browse.

Remarks

The class MetadataRetrievalClient, the Consume Adapter Service Add-in and Add Adapter Service Reference Plug-in tools provide the base implementation using this interface to create WCF client objects that can call the adapter at design-time for retrieving metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IMetadataRetrievalContract Interface
IMetadataRetrievalContract Members
Microsoft.ServiceModel.Channels Namespace
MetadataRetrievalClient


IMetadataRetrievalContract.GetMetadata Method
See Also Example
[image]

Retrieves a ServiceDescription object. The content of the ServiceDescription object is determined from the specified array of MetadataRetrievalNode.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataRetrievalContract
Dim nodes As MetadataRetrievalNode()
Dim returnValue As ServiceDescription

returnValue = instance.GetMetadata(nodes)

Syntax

Visual Basic
<OperationContractAttribute(Action:="http://schemas.microsoft.com/servicemodel/adapters/metadata/Get", ReplyAction:="http://schemas.microsoft.com/servicemodel/adapters/metadata/GetResponse")> _
Function GetMetadata ( _
    nodes As MetadataRetrievalNode() _
) As ServiceDescription
C#
[OperationContractAttribute(Action="http://schemas.microsoft.com/servicemodel/adapters/metadata/Get", ReplyAction="http://schemas.microsoft.com/servicemodel/adapters/metadata/GetResponse")]
ServiceDescription GetMetadata (
    MetadataRetrievalNode[] nodes
)
C++
[OperationContractAttribute(Action=L"http://schemas.microsoft.com/servicemodel/adapters/metadata/Get", ReplyAction=L"http://schemas.microsoft.com/servicemodel/adapters/metadata/GetResponse")]
ServiceDescription^ GetMetadata (
    array<MetadataRetrievalNode^>^ nodes
)
J#
/** @attribute OperationContractAttribute(Action="http://schemas.microsoft.com/servicemodel/adapters/metadata/Get", ReplyAction="http://schemas.microsoft.com/servicemodel/adapters/metadata/GetResponse") */
ServiceDescription GetMetadata (
    MetadataRetrievalNode[] nodes
)
JScript
OperationContractAttribute(Action="http://schemas.microsoft.com/servicemodel/adapters/metadata/Get", ReplyAction="http://schemas.microsoft.com/servicemodel/adapters/metadata/GetResponse")
function GetMetadata (
    nodes : MetadataRetrievalNode[]
) : ServiceDescription

Parameters

nodes

The nodes to get the ServiceDescription for.

Return Value

A ServiceDescription object for the specified nodes.

Example

For examples on how to use this method, see GetMetadata.

Remarks

This method can be used by the adapter consumers to generate a Web Service Description Language (WSDL) for a given set of operation nodes. The Add Adapter Service Reference Visual Studio Plug-in generates a Common Language Runtime (CLR) proxy and the Consume Adapter Service BizTalk Project Add-in generates input and output XML schema files from this WSDL.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IMetadataRetrievalContract Interface
IMetadataRetrievalContract Members
Microsoft.ServiceModel.Channels Namespace


IMetadataRetrievalContract.Search Method
See Also Example
[image]

Retrieves an array of MetadataRetrievalNode objects based on the specified search criteria. The method will begin at nodeId, which points to a location in the tree of metadata nodes. The contents of the array are filtered by searchCriteria and the number of nodes returned is limited by maxChildNodes.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataRetrievalContract
Dim nodeId As String
Dim searchCriteria As String
Dim maxChildNodes As Integer
Dim returnValue As MetadataRetrievalNode()

returnValue = instance.Search(nodeId, searchCriteria, maxChildNodes)

Syntax

Visual Basic
<OperationContractAttribute(Action:="http://schemas.microsoft.com/servicemodel/adapters/metadata/Search", ReplyAction:="http://schemas.microsoft.com/servicemodel/adapters/metadata/SearchResponse")> _
Function Search ( _
    nodeId As String, _
    searchCriteria As String, _
    maxChildNodes As Integer _
) As MetadataRetrievalNode()
C#
[OperationContractAttribute(Action="http://schemas.microsoft.com/servicemodel/adapters/metadata/Search", ReplyAction="http://schemas.microsoft.com/servicemodel/adapters/metadata/SearchResponse")]
MetadataRetrievalNode[] Search (
    string nodeId,
    string searchCriteria,
    int maxChildNodes
)
C++
[OperationContractAttribute(Action=L"http://schemas.microsoft.com/servicemodel/adapters/metadata/Search", ReplyAction=L"http://schemas.microsoft.com/servicemodel/adapters/metadata/SearchResponse")]
array<MetadataRetrievalNode^>^ Search (
    String^ nodeId,
    String^ searchCriteria,
    int maxChildNodes
)
J#
/** @attribute OperationContractAttribute(Action="http://schemas.microsoft.com/servicemodel/adapters/metadata/Search", ReplyAction="http://schemas.microsoft.com/servicemodel/adapters/metadata/SearchResponse") */
MetadataRetrievalNode[] Search (
    String nodeId,
    String searchCriteria,
    int maxChildNodes
)
JScript
OperationContractAttribute(Action="http://schemas.microsoft.com/servicemodel/adapters/metadata/Search", ReplyAction="http://schemas.microsoft.com/servicemodel/adapters/metadata/SearchResponse")
function Search (
    nodeId : String,
    searchCriteria : String,
    maxChildNodes : int
) : MetadataRetrievalNode[]

Parameters

nodeId

A string containing the absoluteName of the node to start searching from.

searchCriteria

A string containing the search criteria to be performed; this is adapter-specific.

maxChildNodes

The maximum number of child nodes allowed to be returned in the result.

Return Value

An array of MetadataRetrievalNode objects.

Example

For examples on how to use this method, see Search.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IMetadataRetrievalContract Interface
IMetadataRetrievalContract Members
Microsoft.ServiceModel.Channels Namespace


InboundActionCollection Class
See Also Members
[image]

Defines a list of inbound actions that are specific to the target URI.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundActionCollection

Syntax

Visual Basic
Public NotInheritable Class InboundActionCollection
    Inherits List(Of String)
C#
public sealed class InboundActionCollection : List<string>
C++
public ref class InboundActionCollection sealed : public List<String^>
J#
public final class InboundActionCollection extends List<String>
JScript
public final class InboundActionCollection extends List<String>

Inheritance Hierarchy

System.Object
System.Collections.Generic.List
Microsoft.ServiceModel.Channels.InboundActionCollection

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionCollection Members
Microsoft.ServiceModel.Channels Namespace


InboundActionCollection Members
See Also Constructors Methods Properties Explicit Interface Implementations
[image]

Defines a list of inbound actions that are specific to the target URI.

The following tables list the members exposed by the InboundActionCollection type.

Public Constructors

Name | Description
InboundActionCollection | Initializes a new instance of the InboundActionCollection class with the specified target Uri.
Top

Public Properties

 | Name | Description
public property | Capacity | (inherited from List)
public property | Count | (inherited from List)
public property | Item | (inherited from List)
public property | Target | Gets the Uri specific to the target.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Add | (inherited from List)
public method | AddRange | (inherited from List)
public method | AsReadOnly | (inherited from List)
public method | BinarySearch | (inherited from List)
public method | BinarySearch | (inherited from List)
public method | BinarySearch | (inherited from List)
public method | Clear | (inherited from List)
public method | Contains | (inherited from List)
public method | ConvertAll | (inherited from List)
public method | CopyTo | (inherited from List)
public method | CopyTo | (inherited from List)
public method | CopyTo | (inherited from List)
public method | Equals | (inherited from Object)
public method | Exists | (inherited from List)
public method | Find | (inherited from List)
public method | FindAll | (inherited from List)
public method | FindIndex | (inherited from List)
public method | FindIndex | (inherited from List)
public method | FindIndex | (inherited from List)
public method | FindLast | (inherited from List)
public method | FindLastIndex | (inherited from List)
public method | FindLastIndex | (inherited from List)
public method | FindLastIndex | (inherited from List)
public method | ForEach | (inherited from List)
public method | GetEnumerator | (inherited from List)
public method | GetHashCode | (inherited from Object)
public method | GetRange | (inherited from List)
public method | GetType | (inherited from Object)
public method | IndexOf | (inherited from List)
public method | IndexOf | (inherited from List)
public method | IndexOf | (inherited from List)
public method | Insert | (inherited from List)
public method | InsertRange | (inherited from List)
public method | LastIndexOf | (inherited from List)
public method | LastIndexOf | (inherited from List)
public method | LastIndexOf | (inherited from List)
public method | Remove | (inherited from List)
public method | RemoveAll | (inherited from List)
public method | RemoveAt | (inherited from List)
public method | RemoveRange | (inherited from List)
public method | Reverse | (inherited from List)
public method | Reverse | (inherited from List)
public method | Sort | (inherited from List)
public method | Sort | (inherited from List)
public method | Sort | (inherited from List)
public method | Sort | (inherited from List)
public method | ToArray | (inherited from List)
public method | ToString | (inherited from Object)
public method | TrimExcess | (inherited from List)
public method | TrueForAll | (inherited from List)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

Explicit Interface Implementations

Name | Description
GetEnumerator | (inherited from List)
CopyTo | (inherited from List)
GetEnumerator | (inherited from List)
Add | (inherited from List)
Contains | (inherited from List)
IndexOf | (inherited from List)
Insert | (inherited from List)
Remove | (inherited from List)
IsReadOnly | (inherited from List)
IsSynchronized | (inherited from List)
SyncRoot | (inherited from List)
IsFixedSize | (inherited from List)
IsReadOnly | (inherited from List)
Item | (inherited from List)
Top

See Also

Reference

InboundActionCollection Class
Microsoft.ServiceModel.Channels Namespace


InboundActionCollection Constructor
[image]

Initializes a new instance of the InboundActionCollection class with the specified target Uri.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim target As Uri

Dim instance As New InboundActionCollection(target)

Syntax

Visual Basic
Public Sub New ( _
    target As Uri _
)
C#
public InboundActionCollection (
    Uri target
)
C++
public:
InboundActionCollection (
    Uri^ target
)
J#
public InboundActionCollection (
    Uri target
)
JScript
public function InboundActionCollection (
    target : Uri
)

Parameters

target

The URI of the target.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionCollection Class
InboundActionCollection Members
Microsoft.ServiceModel.Channels Namespace


InboundActionCollection Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Add | (inherited from List)
public method | AddRange | (inherited from List)
public method | AsReadOnly | (inherited from List)
public method | BinarySearch | (inherited from List)
public method | BinarySearch | (inherited from List)
public method | BinarySearch | (inherited from List)
public method | Clear | (inherited from List)
public method | Contains | (inherited from List)
public method | ConvertAll | (inherited from List)
public method | CopyTo | (inherited from List)
public method | CopyTo | (inherited from List)
public method | CopyTo | (inherited from List)
public method | Equals | (inherited from Object)
public method | Exists | (inherited from List)
public method | Find | (inherited from List)
public method | FindAll | (inherited from List)
public method | FindIndex | (inherited from List)
public method | FindIndex | (inherited from List)
public method | FindIndex | (inherited from List)
public method | FindLast | (inherited from List)
public method | FindLastIndex | (inherited from List)
public method | FindLastIndex | (inherited from List)
public method | FindLastIndex | (inherited from List)
public method | ForEach | (inherited from List)
public method | GetEnumerator | (inherited from List)
public method | GetHashCode | (inherited from Object)
public method | GetRange | (inherited from List)
public method | GetType | (inherited from Object)
public method | IndexOf | (inherited from List)
public method | IndexOf | (inherited from List)
public method | IndexOf | (inherited from List)
public method | Insert | (inherited from List)
public method | InsertRange | (inherited from List)
public method | LastIndexOf | (inherited from List)
public method | LastIndexOf | (inherited from List)
public method | LastIndexOf | (inherited from List)
public method | Remove | (inherited from List)
public method | RemoveAll | (inherited from List)
public method | RemoveAt | (inherited from List)
public method | RemoveRange | (inherited from List)
public method | Reverse | (inherited from List)
public method | Reverse | (inherited from List)
public method | Sort | (inherited from List)
public method | Sort | (inherited from List)
public method | Sort | (inherited from List)
public method | Sort | (inherited from List)
public method | ToArray | (inherited from List)
public method | ToString | (inherited from Object)
public method | TrimExcess | (inherited from List)
public method | TrueForAll | (inherited from List)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

Explicit Interface Implementations

Name | Description
GetEnumerator | (inherited from List)
CopyTo | (inherited from List)
GetEnumerator | (inherited from List)
Add | (inherited from List)
Contains | (inherited from List)
IndexOf | (inherited from List)
Insert | (inherited from List)
Remove | (inherited from List)

See Also

Reference

InboundActionCollection Class
Microsoft.ServiceModel.Channels Namespace


InboundActionCollection Properties
[image]

Public Properties

 | Name | Description
public property | Capacity | (inherited from List)
public property | Count | (inherited from List)
public property | Item | (inherited from List)
public property | Target | Gets the Uri specific to the target.

Explicit Interface Implementations

Name | Description
IsReadOnly | (inherited from List)
IsSynchronized | (inherited from List)
SyncRoot | (inherited from List)
IsFixedSize | (inherited from List)
IsReadOnly | (inherited from List)
Item | (inherited from List)

See Also

Reference

InboundActionCollection Class
Microsoft.ServiceModel.Channels Namespace


InboundActionCollection.Target Property
[image]

Gets the Uri specific to the target.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundActionCollection
Dim value As Uri

value = instance.Target

Syntax

Visual Basic
Public ReadOnly Property Target As Uri
C#
public Uri Target { get; }
C++
public:
property Uri^ Target {
    Uri^ get ();
}
J#
/** @property */
public Uri get_Target ()
JScript
public function get Target () : Uri

Property Value

The Uri specific to the target.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionCollection Class
InboundActionCollection Members
Microsoft.ServiceModel.Channels Namespace


InboundActionElement Class
See Also Example Members
[image]

Represents a configuration element that specifies the InboundActionEndpointBehavior for passing the operation actions to the adapter's inbound handler implementation.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundActionElement

Syntax

Visual Basic
Public NotInheritable Class InboundActionElement
    Inherits BehaviorExtensionElement
C#
public sealed class InboundActionElement : BehaviorExtensionElement
C++
public ref class InboundActionElement sealed : public BehaviorExtensionElement
J#
public final class InboundActionElement extends BehaviorExtensionElement
JScript
public final class InboundActionElement extends BehaviorExtensionElement

Example

The following provides a sample app.config file.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <system.serviceModel>
    <behaviors>
      <endpointBehaviors>
        <behavior name="InboundActionEndpointBehavior">
          <inboundActionElement />
        </behavior>
      </endpointBehaviors>
    </behaviors>
    <extensions>
      <behaviorExtensions>
        <add name="inboundActionElement" type="Microsoft.ServiceModel.Channels.InboundActionElement, Microsoft.ServiceModel.Channels, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
      </behaviorExtensions>
    </extensions>
    <services>
      <service name="EchoAdapterBindingNamespace.EchoAdapterBindingService">
        <endpoint address="echo://host/temp?EchoPrefix=pre" behaviorConfiguration="InboundActionEndpointBehavior"
            binding="echoAdapterBinding" bindingConfiguration="EchoAdapterBinding"
            contract="EchoService" />
      </service>
    </services>
    <bindings>
      <echoAdapterBinding>
        <binding name="EchoAdapterBinding" closeTimeout="00:01:00" openTimeout="00:01:00"
            receiveTimeout="00:10:00" sendTimeout="00:01:00" count="5"
            fileWatcherFolder="C:\temp" />
      </echoAdapterBinding>
    </bindings>
  </system.serviceModel>
</configuration>

The following code example shows how to self-host a WCF service without endpoint behavior since the above app.config file already contains such information.

C# Copy Code
static void Main(string[] args)
{
    try
    {
        // Create a ServiceHost for the EchoServiceImpl type
        // and use the base address from app.config
        ServiceHost host = new ServiceHost(typeof(EchoAdapterBindingService));

        // Set service behavior to pass the line-of-business credentials.
        InboundClientCredentialsServiceBehavior credentialsBehavior = new InboundClientCredentialsServiceBehavior();
        credentialsBehavior.UserName.UserName = "username";
        credentialsBehavior.UserName.Password = "****";
        host.Description.Behaviors.Add(credentialsBehavior);

        // Open the ServiceHost to start listening for messages
        host.Open();

        Console.WriteLine("The service is ready.");
        Console.WriteLine("Press <ENTER> to terminate service.");
        Console.ReadLine();

        // Close the ServiceHost
        host.Close();
    }
    catch (TimeoutException ex)
    {
        Console.WriteLine(ex.Message);
        Console.WriteLine();
    }
    catch (CommunicationException ex)
    {
        Console.WriteLine(ex.Message);
        Console.WriteLine();
    }
}

Remarks

This interface is required for the adapter consumer to enable the WCF LOB Adapter SDK to pass the inbound operation actions to the StartListener method of the adapter's inbound handler implementation.

Note
This endpoint behavior is applicable only if adapter developers choose to perform a different listening mechanism based on different inbound operation actions.

Inheritance Hierarchy

System.Object
System.Configuration.ConfigurationElement
System.ServiceModel.Configuration.ServiceModelExtensionElement
System.ServiceModel.Configuration.BehaviorExtensionElement
Microsoft.ServiceModel.Channels.InboundActionElement

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

InboundActionElement Members
Microsoft.ServiceModel.Channels Namespace
IInboundHandler
InboundActionEndpointBehavior


InboundActionElement Members
See Also Constructors Methods Properties
[image]

Represents a configuration element that specifies the InboundActionEndpointBehavior for passing the operation actions to the adapter's inbound handler implementation.

The following tables list the members exposed by the InboundActionElement type.

Public Constructors

Name | Description
InboundActionElement | Initializes a new instance of the InboundActionElement class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | BehaviorType | Overridden. Gets the type of endpoint behavior represented by this configuration element.
public property | ConfigurationElementName | (inherited from ServiceModelExtensionElement)
public property | ElementInformation | (inherited from ConfigurationElement)
public property | LockAllAttributesExcept | (inherited from ConfigurationElement)
public property | LockAllElementsExcept | (inherited from ConfigurationElement)
public property | LockAttributes | (inherited from ConfigurationElement)
public property | LockElements | (inherited from ConfigurationElement)
public property | LockItem | (inherited from ConfigurationElement)
Top

Protected Properties

 | Name | Description
protected property | EvaluationContext | (inherited from ConfigurationElement)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | CopyFrom | (inherited from ServiceModelExtensionElement)
public method | Equals | Overridden. (inherited from Object)
public method | GetHashCode | Overridden. (inherited from Object)
public method | GetType | (inherited from Object)
public method | IsReadOnly | (inherited from ConfigurationElement)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | IsModified | Overridden. (inherited from ConfigurationElement)
protected method | ListErrors | (inherited from ConfigurationElement)
protected method | MemberwiseClone | (inherited from Object)
protected method | OnDeserializeUnrecognizedAttribute | (inherited from ConfigurationElement)
protected method | OnDeserializeUnrecognizedElement | (inherited from ConfigurationElement)
protected method | OnRequiredPropertyNotFound | (inherited from ConfigurationElement)
protected method | PostDeserialize | (inherited from ConfigurationElement)
protected method | PreSerialize | (inherited from ConfigurationElement)
protected method | SerializeElement | Overridden. (inherited from ConfigurationElement)
protected method | SetPropertyValue | (inherited from ConfigurationElement)
Top

See Also

Reference

InboundActionElement Class
Microsoft.ServiceModel.Channels Namespace
IInboundHandler
InboundActionEndpointBehavior


InboundActionElement Constructor
[image]

Initializes a new instance of the InboundActionElement class.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New InboundActionElement

Syntax

Visual Basic
Public Sub New
C#
public InboundActionElement ()
C++
public:
InboundActionElement ()
J#
public InboundActionElement ()
JScript
public function InboundActionElement ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionElement Class
InboundActionElement Members
Microsoft.ServiceModel.Channels Namespace


InboundActionElement Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | CopyFrom | (inherited from ServiceModelExtensionElement)
public method | Equals | Overridden. (inherited from Object)
public method | GetHashCode | Overridden. (inherited from Object)
public method | GetType | (inherited from Object)
public method | IsReadOnly | (inherited from ConfigurationElement)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | IsModified | Overridden. (inherited from ConfigurationElement)
protected method | ListErrors | (inherited from ConfigurationElement)
protected method | MemberwiseClone | (inherited from Object)
protected method | OnDeserializeUnrecognizedAttribute | (inherited from ConfigurationElement)
protected method | OnDeserializeUnrecognizedElement | (inherited from ConfigurationElement)
protected method | OnRequiredPropertyNotFound | (inherited from ConfigurationElement)
protected method | PostDeserialize | (inherited from ConfigurationElement)
protected method | PreSerialize | (inherited from ConfigurationElement)
protected method | SerializeElement | Overridden. (inherited from ConfigurationElement)
protected method | SetPropertyValue | (inherited from ConfigurationElement)

See Also

Reference

InboundActionElement Class
Microsoft.ServiceModel.Channels Namespace
IInboundHandler
InboundActionEndpointBehavior


InboundActionElement Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | BehaviorType | Overridden. Gets the type of endpoint behavior represented by this configuration element.
public property | ConfigurationElementName | (inherited from ServiceModelExtensionElement)
public property | ElementInformation | (inherited from ConfigurationElement)
public property | LockAllAttributesExcept | (inherited from ConfigurationElement)
public property | LockAllElementsExcept | (inherited from ConfigurationElement)
public property | LockAttributes | (inherited from ConfigurationElement)
public property | LockElements | (inherited from ConfigurationElement)
public property | LockItem | (inherited from ConfigurationElement)

Protected Properties

 | Name | Description
protected property | EvaluationContext | (inherited from ConfigurationElement)

See Also

Reference

InboundActionElement Class
Microsoft.ServiceModel.Channels Namespace
IInboundHandler
InboundActionEndpointBehavior


InboundActionElement.BehaviorType Property
[image]

Gets the type of endpoint behavior represented by this configuration element.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundActionElement
Dim value As Type

value = instance.BehaviorType

Syntax

Visual Basic
Public Overrides ReadOnly Property BehaviorType As Type
C#
public override Type BehaviorType { get; }
C++
public:
virtual property Type^ BehaviorType {
    Type^ get () override;
}
J#
/** @property */
public Type get_BehaviorType ()
JScript
public override function get BehaviorType () : Type

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionElement Class
InboundActionElement Members
Microsoft.ServiceModel.Channels Namespace


InboundActionEndpointBehavior Class
See Also Example Members
[image]

Extends the runtime behavior for an endpoint to copy all of the contract's action(s) for an inbound service to the BindingParameterCollection so that it can be used by the adapter at runtime to know what operations to listen to.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundActionEndpointBehavior

Syntax

Visual Basic
Public NotInheritable Class InboundActionEndpointBehavior
    Implements IEndpointBehavior
C#
public sealed class InboundActionEndpointBehavior : IEndpointBehavior
C++
public ref class InboundActionEndpointBehavior sealed : IEndpointBehavior
J#
public final class InboundActionEndpointBehavior implements IEndpointBehavior
JScript
public final class InboundActionEndpointBehavior implements IEndpointBehavior

Example

The following code example demonstrates the first approach: how you use the InboundActionEndpointBehavior class in an inbound scenario by adding the endpoint behavior to the service host program.

C# Copy Code
class Program
{
    static void Main(string[] args)
    {
        ServiceHost host = new ServiceHost(typeof(HelloWorldService));
        HelloWorldAdapterBinding binding = new HelloWorldAdapterBinding();
        ServiceEndpoint endpoint = host.AddServiceEndpoint(typeof(HelloWorldService), binding, new Uri(baseUri));
        InboundActionEndpointBehavior behavior = new InboundActionEndpointBehavior();
        endpoint.Behaviors.Add(behavior);
        host.Open();
        Console.WriteLine("The service is ready.");
        Console.WriteLine("Press <ENTER> to terminate service.");
        Console.ReadLine();
        host.Close();
    }
}

See InboundActionElement class for how this behavior can be specified in the app.config file instead of using it in the code. The Add Adapter Service Reference Visual Studio Plug-in will automatically generate all content for the app.config file.

Remarks

There are two ways to use this InboundActionEndpointBehavior class in an inbound scenario. The first is to add the endpoint behavior to the service host program. The second is to add that information to the app.config file instead, which is used by the adapter consumer only.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.InboundActionEndpointBehavior

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

InboundActionEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace
IInboundHandler
InboundActionElement


InboundActionEndpointBehavior Members
See Also Constructors Methods
[image]

Extends the runtime behavior for an endpoint to copy all of the contract's action(s) for an inbound service to the BindingParameterCollection so that it can be used by the adapter at runtime to know what operations to listen to.

The following tables list the members exposed by the InboundActionEndpointBehavior type.

Public Constructors

Name | Description
InboundActionEndpointBehavior | Initializes a new instance of the InboundActionEndpointBehavior class.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | AddBindingParameters | Passes data at runtime to bindings to support custom behavior. This method retrieves the endpoint's contract, enumerates through all the operation descriptions, and adds the operation input message's action to an internal inbound action collection.
public method | ApplyClientBehavior | Implements a modification or extension of the client across an endpoint.
public method | ApplyDispatchBehavior | Implements a modification or extension of the service across an endpoint.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
public method | Validate | Implements to confirm that the endpoint meets intended criteria.
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

InboundActionEndpointBehavior Class
Microsoft.ServiceModel.Channels Namespace
IInboundHandler
InboundActionElement


InboundActionEndpointBehavior Constructor
[image]

Initializes a new instance of the InboundActionEndpointBehavior class.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New InboundActionEndpointBehavior

Syntax

Visual Basic
Public Sub New
C#
public InboundActionEndpointBehavior ()
C++
public:
InboundActionEndpointBehavior ()
J#
public InboundActionEndpointBehavior ()
JScript
public function InboundActionEndpointBehavior ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionEndpointBehavior Class
InboundActionEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


InboundActionEndpointBehavior Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | AddBindingParameters | Passes data at runtime to bindings to support custom behavior. This method retrieves the endpoint's contract, enumerates through all the operation descriptions, and adds the operation input message's action to an internal inbound action collection.
public method | ApplyClientBehavior | Implements a modification or extension of the client across an endpoint.
public method | ApplyDispatchBehavior | Implements a modification or extension of the service across an endpoint.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
public method | Validate | Implements to confirm that the endpoint meets intended criteria.

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

InboundActionEndpointBehavior Class
Microsoft.ServiceModel.Channels Namespace
IInboundHandler
InboundActionElement


InboundActionEndpointBehavior.AddBindingParameters Method
[image]

Passes data at runtime to bindings to support custom behavior. This method retrieves the endpoint's contract, enumerates through all the operation descriptions, and adds the operation input message's action to an internal inbound action collection.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundActionEndpointBehavior
Dim endpoint As ServiceEndpoint
Dim bindingParameters As BindingParameterCollection

instance.AddBindingParameters(endpoint, bindingParameters)

Syntax

Visual Basic
Public Sub AddBindingParameters ( _
    endpoint As ServiceEndpoint, _
    bindingParameters As BindingParameterCollection _
)
C#
public void AddBindingParameters (
    ServiceEndpoint endpoint,
    BindingParameterCollection bindingParameters
)
C++
public:
virtual void AddBindingParameters (
    ServiceEndpoint^ endpoint,
    BindingParameterCollection^ bindingParameters
) sealed
J#
public final void AddBindingParameters (
    ServiceEndpoint endpoint,
    BindingParameterCollection bindingParameters
)
JScript
public final function AddBindingParameters (
    endpoint : ServiceEndpoint,
    bindingParameters : BindingParameterCollection
)

Parameters

endpoint

The endpoint to modify.

bindingParameters

The objects that binding elements require to support the behavior.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionEndpointBehavior Class
InboundActionEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


InboundActionEndpointBehavior.ApplyClientBehavior Method
[image]

Implements a modification or extension of the client across an endpoint.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundActionEndpointBehavior
Dim endpoint As ServiceEndpoint
Dim clientRuntime As ClientRuntime

instance.ApplyClientBehavior(endpoint, clientRuntime)

Syntax

Visual Basic
Public Sub ApplyClientBehavior ( _
    endpoint As ServiceEndpoint, _
    clientRuntime As ClientRuntime _
)
C#
public void ApplyClientBehavior (
    ServiceEndpoint endpoint,
    ClientRuntime clientRuntime
)
C++
public:
virtual void ApplyClientBehavior (
    ServiceEndpoint^ endpoint,
    ClientRuntime^ clientRuntime
) sealed
J#
public final void ApplyClientBehavior (
    ServiceEndpoint endpoint,
    ClientRuntime clientRuntime
)
JScript
public final function ApplyClientBehavior (
    endpoint : ServiceEndpoint,
    clientRuntime : ClientRuntime
)

Parameters

endpoint

The endpoint that is to be customized.

clientRuntime

The client runtime to be customized.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionEndpointBehavior Class
InboundActionEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


InboundActionEndpointBehavior.ApplyDispatchBehavior Method
[image]

Implements a modification or extension of the service across an endpoint.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundActionEndpointBehavior
Dim endpoint As ServiceEndpoint
Dim endpointDispatcher As EndpointDispatcher

instance.ApplyDispatchBehavior(endpoint, endpointDispatcher)

Syntax

Visual Basic
Public Sub ApplyDispatchBehavior ( _
    endpoint As ServiceEndpoint, _
    endpointDispatcher As EndpointDispatcher _
)
C#
public void ApplyDispatchBehavior (
    ServiceEndpoint endpoint,
    EndpointDispatcher endpointDispatcher
)
C++
public:
virtual void ApplyDispatchBehavior (
    ServiceEndpoint^ endpoint,
    EndpointDispatcher^ endpointDispatcher
) sealed
J#
public final void ApplyDispatchBehavior (
    ServiceEndpoint endpoint,
    EndpointDispatcher endpointDispatcher
)
JScript
public final function ApplyDispatchBehavior (
    endpoint : ServiceEndpoint,
    endpointDispatcher : EndpointDispatcher
)

Parameters

endpoint

The endpoint that exposes the contract.

endpointDispatcher

The endpoint dispatcher to be modified or extended.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionEndpointBehavior Class
InboundActionEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


InboundActionEndpointBehavior.Validate Method
[image]

Implements to confirm that the endpoint meets intended criteria.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundActionEndpointBehavior
Dim endpoint As ServiceEndpoint

instance.Validate(endpoint)

Syntax

Visual Basic
Public Sub Validate ( _
    endpoint As ServiceEndpoint _
)
C#
public void Validate (
    ServiceEndpoint endpoint
)
C++
public:
virtual void Validate (
    ServiceEndpoint^ endpoint
) sealed
J#
public final void Validate (
    ServiceEndpoint endpoint
)
JScript
public final function Validate (
    endpoint : ServiceEndpoint
)

Parameters

endpoint

The endpoint to validate.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundActionEndpointBehavior Class
InboundActionEndpointBehavior Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Class
See Also Members
[image]

Is a metadata client proxy used for browsing, searching, and retrieving metadata from an adapter binding.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalClient

Syntax

Visual Basic
Public Class MetadataRetrievalClient
    Inherits ClientBase(Of IMetadataRetrievalContract)
    Implements IMetadataRetrievalContract
C#
public class MetadataRetrievalClient : ClientBase<IMetadataRetrievalContract>, IMetadataRetrievalContract
C++
public ref class MetadataRetrievalClient : public ClientBase<IMetadataRetrievalContract^>, IMetadataRetrievalContract
J#
public class MetadataRetrievalClient extends ClientBase<IMetadataRetrievalContract> implements IMetadataRetrievalContract
JScript
public class MetadataRetrievalClient extends ClientBase<IMetadataRetrievalContract> implements IMetadataRetrievalContract

Remarks

The MetadataRetrievalClient class implements the IMetadataRetrievalContract interface to call an adapter service. This class can be used to search, browse, and retrieve metadata information from adapters built using the WCF LOB Adapter SDK.

Inheritance Hierarchy

System.Object
System.ServiceModel.ClientBase
Microsoft.ServiceModel.Channels.MetadataRetrievalClient

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Members
See Also Constructors Methods Properties Explicit Interface Implementations
[image]

Is a metadata client proxy used for browsing, searching, and retrieving metadata from an adapter binding.

The following tables list the members exposed by the MetadataRetrievalClient type.

Public Constructors

Name | Description
MetadataRetrievalClient | Overloaded. Initializes an instance of the MetadataRetrievalClient class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | ChannelFactory | (inherited from ClientBase)
public property | ClientCredentials | (inherited from ClientBase)
public property | Endpoint | (inherited from ClientBase)
public property | InnerChannel | (inherited from ClientBase)
public property | State | (inherited from ClientBase)
Top

Protected Properties

 | Name | Description
protected property | Channel | (inherited from ClientBase)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Abort | (inherited from ClientBase)
public method | Browse | Retrieves an array of MetadataRetrievalNode objects. This method will return nodes starting from the childStartIndex in absoluteName, and the number of nodes returned is limited by maxChildNodes.
public method | Close | (inherited from ClientBase)
public method | DisplayInitializationUI | (inherited from ClientBase)
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetMetadata | Retrieves the ServiceDescription object for the specified array of MetadataRetrievalNode objects.
public method | GetType | (inherited from Object)
public method | Open | (inherited from ClientBase)
public method | Search | Retrieves an array of MetadataRetrievalNode objects. The search will begin at nodePath, which points to a location in the tree of metadata nodes. The contents of the array are filtered by searchCriteria and the number of nodes returned is limited by maxChildNodes.
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | CreateChannel | (inherited from ClientBase)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

Explicit Interface Implementations

Name | Description
Dispose | (inherited from ClientBase)
BeginClose | (inherited from ClientBase)
BeginClose | (inherited from ClientBase)
BeginOpen | (inherited from ClientBase)
BeginOpen | (inherited from ClientBase)
Close | (inherited from ClientBase)
EndClose | (inherited from ClientBase)
EndOpen | (inherited from ClientBase)
Open | (inherited from ClientBase)
Closed | (inherited from ClientBase)
Closing | (inherited from ClientBase)
Faulted | (inherited from ClientBase)
Opened | (inherited from ClientBase)
Opening | (inherited from ClientBase)
Top

See Also

Reference

MetadataRetrievalClient Class
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Constructor
[image]

Initializes an instance of the MetadataRetrievalClient class.

Overload List

Name | Description
MetadataRetrievalClient () | Initializes an instance of the MetadataRetrievalClient class.
MetadataRetrievalClient (Binding, EndpointAddress) | Initializes an instance of the MetadataRetrievalClient class using the specified Binding and EndpointAddress objects.
MetadataRetrievalClient (String) | Initializes an instance of MetadataRetrievalClient with an endpoint configuration name.
MetadataRetrievalClient (String, EndpointAddress) | Initializes an instance of the MetadataRetrievalClient class using the specified endpoint configuration name and EndpointAddress object.
MetadataRetrievalClient (String, String) | Initializes an instance of the MetadataRetrievalClient class by using the specified endpoint configuration name and remote address.

See Also

Reference

MetadataRetrievalClient Class
MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Constructor ()
[image]

Initializes an instance of the MetadataRetrievalClient class.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New MetadataRetrievalClient

Syntax

Visual Basic
Public Sub New
C#
public MetadataRetrievalClient ()
C++
public:
MetadataRetrievalClient ()
J#
public MetadataRetrievalClient ()
JScript
public function MetadataRetrievalClient ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalClient Class
MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Constructor (Binding, EndpointAddress)
[image]

Initializes an instance of the MetadataRetrievalClient class using the specified Binding and EndpointAddress objects.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim binding As Binding
Dim remoteAddress As EndpointAddress

Dim instance As New MetadataRetrievalClient(binding, remoteAddress)

Syntax

Visual Basic
Public Sub New ( _
    binding As Binding, _
    remoteAddress As EndpointAddress _
)
C#
public MetadataRetrievalClient (
    Binding binding,
    EndpointAddress remoteAddress
)
C++
public:
MetadataRetrievalClient (
    Binding^ binding,
    EndpointAddress^ remoteAddress
)
J#
public MetadataRetrievalClient (
    Binding binding,
    EndpointAddress remoteAddress
)
JScript
public function MetadataRetrievalClient (
    binding : Binding,
    remoteAddress : EndpointAddress
)

Parameters

binding

The Binding object used to initialize the instance and used to make calls to the adapter.

remoteAddress

The address of the service endpoint with which the instance communicates.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalClient Class
MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Constructor (String)
[image]

Initializes an instance of MetadataRetrievalClient with an endpoint configuration name.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim endpointConfigurationName As String

Dim instance As New MetadataRetrievalClient(endpointConfigurationName)

Syntax

Visual Basic
Public Sub New ( _
    endpointConfigurationName As String _
)
C#
public MetadataRetrievalClient (
    string endpointConfigurationName
)
C++
public:
MetadataRetrievalClient (
    String^ endpointConfigurationName
)
J#
public MetadataRetrievalClient (
    String endpointConfigurationName
)
JScript
public function MetadataRetrievalClient (
    endpointConfigurationName : String
)

Parameters

endpointConfigurationName

The name of the endpoint as in the application configuration file.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalClient Class
MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Constructor (String, EndpointAddress)
[image]

Initializes an instance of the MetadataRetrievalClient class using the specified endpoint configuration name and EndpointAddress object.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim endpointConfigurationName As String
Dim remoteAddress As EndpointAddress

Dim instance As New MetadataRetrievalClient(endpointConfigurationName, remoteAddress)

Syntax

Visual Basic
Public Sub New ( _
    endpointConfigurationName As String, _
    remoteAddress As EndpointAddress _
)
C#
public MetadataRetrievalClient (
    string endpointConfigurationName,
    EndpointAddress remoteAddress
)
C++
public:
MetadataRetrievalClient (
    String^ endpointConfigurationName,
    EndpointAddress^ remoteAddress
)
J#
public MetadataRetrievalClient (
    String endpointConfigurationName,
    EndpointAddress remoteAddress
)
JScript
public function MetadataRetrievalClient (
    endpointConfigurationName : String,
    remoteAddress : EndpointAddress
)

Parameters

endpointConfigurationName

The name of the endpoint in the application configuration file

remoteAddress

The address of the service endpoint with which the instance communicates

Remarks

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalClient Class
MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Constructor (String, String)
[image]

Initializes an instance of the MetadataRetrievalClient class by using the specified endpoint configuration name and remote address.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim endpointConfigurationName As String
Dim remoteAddress As String

Dim instance As New MetadataRetrievalClient(endpointConfigurationName, remoteAddress)

Syntax

Visual Basic
Public Sub New ( _
    endpointConfigurationName As String, _
    remoteAddress As String _
)
C#
public MetadataRetrievalClient (
    string endpointConfigurationName,
    string remoteAddress
)
C++
public:
MetadataRetrievalClient (
    String^ endpointConfigurationName,
    String^ remoteAddress
)
J#
public MetadataRetrievalClient (
    String endpointConfigurationName,
    String remoteAddress
)
JScript
public function MetadataRetrievalClient (
    endpointConfigurationName : String,
    remoteAddress : String
)

Parameters

endpointConfigurationName

The name of the endpoint in the application configuration file.

remoteAddress

The remote address with which the instance communicates.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalClient Class
MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Abort | (inherited from ClientBase)
public method | Browse | Retrieves an array of MetadataRetrievalNode objects. This method will return nodes starting from the childStartIndex in absoluteName, and the number of nodes returned is limited by maxChildNodes.
public method | Close | (inherited from ClientBase)
public method | DisplayInitializationUI | (inherited from ClientBase)
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetMetadata | Retrieves the ServiceDescription object for the specified array of MetadataRetrievalNode objects.
public method | GetType | (inherited from Object)
public method | Open | (inherited from ClientBase)
public method | Search | Retrieves an array of MetadataRetrievalNode objects. The search will begin at nodePath, which points to a location in the tree of metadata nodes. The contents of the array are filtered by searchCriteria and the number of nodes returned is limited by maxChildNodes.
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | CreateChannel | (inherited from ClientBase)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

Explicit Interface Implementations

Name | Description
Dispose | (inherited from ClientBase)
BeginClose | (inherited from ClientBase)
BeginClose | (inherited from ClientBase)
BeginOpen | (inherited from ClientBase)
BeginOpen | (inherited from ClientBase)
Close | (inherited from ClientBase)
EndClose | (inherited from ClientBase)
EndOpen | (inherited from ClientBase)
Open | (inherited from ClientBase)

See Also

Reference

MetadataRetrievalClient Class
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient.Browse Method
See Also Example
[image]

Retrieves an array of MetadataRetrievalNode objects. This method will return nodes starting from the childStartIndex in absoluteName, and the number of nodes returned is limited by maxChildNodes.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalClient
Dim nodeId As String
Dim childStartIndex As Integer
Dim maxChildNodes As Integer
Dim returnValue As MetadataRetrievalNode()

returnValue = instance.Browse(nodeId, childStartIndex, maxChildNodes)

Syntax

Visual Basic
Public Function Browse ( _
    nodeId As String, _
    childStartIndex As Integer, _
    maxChildNodes As Integer _
) As MetadataRetrievalNode()
C#
public MetadataRetrievalNode[] Browse (
    string nodeId,
    int childStartIndex,
    int maxChildNodes
)
C++
public:
virtual array<MetadataRetrievalNode^>^ Browse (
    String^ nodeId,
    int childStartIndex,
    int maxChildNodes
) sealed
J#
public final MetadataRetrievalNode[] Browse (
    String nodeId,
    int childStartIndex,
    int maxChildNodes
)
JScript
public final function Browse (
    nodeId : String,
    childStartIndex : int,
    maxChildNodes : int
) : MetadataRetrievalNode[]

Parameters

nodeId

The ID of the node to start browsing from.

childStartIndex

The index of the first child node to return in the result.

maxChildNodes

The maximum number of child nodes to return in the result; use Int.MaxInt to retrieve all child nodes.

Return Value

An array of MetadataRetrievalNode nodes.

Example

The following provides an example of using the MetadataRetrievalClient class to browse the adapter for category and operation nodes, and then to display them on the console.

C# Copy Code
class Program
{
    static void Main(string[] args)
    {
        // create the binding
        SampleAdapterBinding binding = new SampleAdapterBinding();
        // create the endpoint address
        EndpointAddress address = new EndpointAddress("sample://host:100/DB2OLEDB/MyDB?Protocol=TCPIP&Driver=Test");
        // create the metadata retrieval client
        MetadataRetrievalClient metadataProxy = new MetadataRetrievalClient(binding, address);
        // Show the nodes on the console
        Console.WriteLine("Browsing " + binding.Name + "...\n");
        // Browse the nodes
        MetadataRetrievalNode[] nodes = OutputMetadataTree(metadataProxy, null, 0);
        Console.WriteLine();
        // close the client
        metadataProxy.Close();
    }

    // This method browses the adapter for category and operation nodes
    // and displays them on the console.
    private static MetadataRetrievalNode[] OutputMetadataTree(IMetadataRetrievalContract proxy, MetadataRetrievalNode node, int depth)
    {
        for (int i = 0; i < depth; i++)
        {
            if (i < depth - 1)
            {
                Console.Write("   ");
            }
            else
            {
                Console.Write("└──");
            }
        }
        Console.WriteLine(node == null ? "Root" : node.NodeId + " (" + node.Direction + ")");

        MetadataRetrievalNode[] rootNodes = proxy.Browse(node == null ? "/" : node.NodeId, 0, 100);

        foreach (MetadataRetrievalNode childNode in rootNodes)
        {
            OutputMetadataTree(proxy, childNode, depth + 1);
        }
        return rootNodes;
    }
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataRetrievalClient Class
MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient.GetMetadata Method
See Also Example
[image]

Retrieves the ServiceDescription object for the specified array of MetadataRetrievalNode objects.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalClient
Dim nodes As MetadataRetrievalNode()
Dim returnValue As ServiceDescription

returnValue = instance.GetMetadata(nodes)

Syntax

Visual Basic
Public Function GetMetadata ( _
    nodes As MetadataRetrievalNode() _
) As ServiceDescription
C#
public ServiceDescription GetMetadata (
    MetadataRetrievalNode[] nodes
)
C++
public:
virtual ServiceDescription^ GetMetadata (
    array<MetadataRetrievalNode^>^ nodes
) sealed
J#
public final ServiceDescription GetMetadata (
    MetadataRetrievalNode[] nodes
)
JScript
public final function GetMetadata (
    nodes : MetadataRetrievalNode[]
) : ServiceDescription

Parameters

nodes

An array of MetadataRetrievalNode objects that specify the information to retrieve.

Return Value

The ServiceDescription object for the specified array of MetadataRetrievalNode objects.

Example

The following code provides an example of using the MetadataRetrievalClient class and the GetMetadata method to get WSDL.

C# Copy Code
class Program
{
    static void Main(string[] args)
    {
        // Create the binding
        SampleAdapterBinding binding = new SampleAdapterBinding();
        // create the endpoint address
        EndpointAddress address = new EndpointAddress("sample://host:100/DB2OLEDB/MyDB?Protocol=TCPIP&Driver=Test");
        // Create metadata retrieval client
        MetadataRetrievalClient metadataProxy = new MetadataRetrievalClient(binding, address);
        // Show the nodes on the console
        Console.WriteLine("Browsing " + binding.Name + "...\n");
        // Browse all the nodes, starting from root
        MetadataRetrievalNode[] nodes = metadataProxy.Browse(MetadataRetrievalNode.Root.NodeId, 0, 100);

        // Get the WSDL
        ServiceDescription wsdl = metadataProxy.GetMetadata(nodes);
        wsdl.Write(@"c:\temp\sampleadapter.wsdl");
        Console.WriteLine();
        // close the client
        metadataProxy.Close();
    }
}

In addition to using the MetadataRetrievalClient class to retrieve metadata from an adapter built using the WCF LOB Adapter SDK, you can also use the following two approaches to retrieve metadata from the adapter:

  1. Using MetadataExchangeClient to retrieve metadata

  2. Using svcutil.exe to retrieve metadata

To retrieve metadata by using the MetadataExchangeClient class, you need to add the following lines to the machine.config file, so that the metadata exchange client is registered with the WCF configuration,

Copy Code
    <client>
      <endpoint binding="sampleAdapterBinding" contract="IMetadataExchange"
        name="sample" />
    </client>

The following example shows how to retrieve metadata by using the MetadataExchangeClient class.

Copy Code
using System;
using System.ServiceModel;
using WSDL = System.Web.Services.Description;
using System.ServiceModel.Description;

namespace CodeSnippet_Resolve
{
    class Program
    {
        static void Main(string[] args)
        {
            // Get the WSDL for specified operations
            string op1 = "{Operation Identifier 1}";
            string op2 = "{Operation Identifier 2}";
            // Retrieve WSDL using MEX
            EndpointAddress mexAddress = new EndpointAddress("sample://localhost:10000/DB2OLEDB/AdventureWorks?Protocol=TCPIP&Driver=Test&wsdl" + "&op=" + op1 + "&op=" + op2);
            // Create a metadata exchange client to retrieve metadata as per WS-MEX standard
            MetadataExchangeClient mexClient = new MetadataExchangeClient(mexAddress);
            // Obtain the metadata
            MetadataSet metadataSet = mexClient.GetMetadata(mexAddress);
            // Retrieve the first service description found
            WSDL.ServiceDescription wsdl = (WSDL.ServiceDescription) metadataSet.MetadataSections[0].Metadata;
            // Write the WSDL to a file
            String fileName = @"c:\temp\output.wsdl";
            Console.WriteLine("Writing WSDL to " + fileName);
            wsdl.Write(fileName);
        }
    }
}

The second method is to use svcutil.exe to retrieve metadata. To do so, you need to make sure that <system.ServiceModel> configuration knows about the metadata exchange for this WCF binding by adding the following lines to the machine.config file.

Copy Code
    <client>
      <endpoint binding="sampleAdapterBinding" contract="IMetadataExchange"
        name="sample" />
    </client>

To generate WSDL, run the following command:

Copy Code
svcutil /t:metadata "sample://localhost:10000/DB2OLEDB/AdventureWorks?Protocol=TCPIP&Driver=Test&op={Operation Identifier 1}"
Note
If op={operation identifier} is not specified in the query string, the adapter will attempt to resolve metadata from root ("/").

Remarks

The content of the ServiceDescription is determined from the specified array of MetadataRetrievalNode objects.

Note
If null is passed to the GetMetadata method, the generated WSDL will contain all operations starting from the root ("/").

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataRetrievalClient Class
MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient.Search Method
See Also Example
[image]

Retrieves an array of MetadataRetrievalNode objects. The search will begin at nodePath, which points to a location in the tree of metadata nodes. The contents of the array are filtered by searchCriteria and the number of nodes returned is limited by maxChildNodes.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalClient
Dim nodeId As String
Dim searchCriteria As String
Dim maxChildNodes As Integer
Dim returnValue As MetadataRetrievalNode()

returnValue = instance.Search(nodeId, searchCriteria, maxChildNodes)

Syntax

Visual Basic
Public Function Search ( _
    nodeId As String, _
    searchCriteria As String, _
    maxChildNodes As Integer _
) As MetadataRetrievalNode()
C#
public MetadataRetrievalNode[] Search (
    string nodeId,
    string searchCriteria,
    int maxChildNodes
)
C++
public:
virtual array<MetadataRetrievalNode^>^ Search (
    String^ nodeId,
    String^ searchCriteria,
    int maxChildNodes
) sealed
J#
public final MetadataRetrievalNode[] Search (
    String nodeId,
    String searchCriteria,
    int maxChildNodes
)
JScript
public final function Search (
    nodeId : String,
    searchCriteria : String,
    maxChildNodes : int
) : MetadataRetrievalNode[]

Parameters

nodeId

The ID of the node to start searching from.

searchCriteria

Adapter-specific search criteria to be performed.

maxChildNodes

The maximum number of child nodes to return in the result; use Int.MaxInt to retrieve all child nodes.

Return Value

An array of MetadataRetrievalNode objects.

Example

The following code provides an example of how to use this Search method to search the MetadataRetrievalNode objects that meet the criteria specified in this search function parameters.

C# Copy Code
class Program
{
    static void Main(string[] args)
    {
        // Create metadata retrieval client using app.config
        MetadataRetrievalClient metadataProxy = new MetadataRetrievalClient();
        // Start searching for the nodes
        Console.WriteLine("Searching " + metadataProxy.Endpoint.Binding.Name + "...\n");
        // Search the nodes
        MetadataRetrievalNode[] nodes = metadataProxy.Search("MyNodeID", "%CUSTOMER", 100);
        // Use the node
        foreach (MetadataRetrievalNode node in nodes)
        {
            Console.WriteLine(node.DisplayName + " (" + node.Direction + ")");
        }
        Console.WriteLine();
        // close the client
        metadataProxy.Close();
    }
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataRetrievalClient Class
MetadataRetrievalClient Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | ChannelFactory | (inherited from ClientBase)
public property | ClientCredentials | (inherited from ClientBase)
public property | Endpoint | (inherited from ClientBase)
public property | InnerChannel | (inherited from ClientBase)
public property | State | (inherited from ClientBase)

Protected Properties

 | Name | Description
protected property | Channel | (inherited from ClientBase)

See Also

Reference

MetadataRetrievalClient Class
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalClient Events
[image]

Explicit Interface Implementations

Name | Description
Closed | (inherited from ClientBase)
Closing | (inherited from ClientBase)
Faulted | (inherited from ClientBase)
Opened | (inherited from ClientBase)
Opening | (inherited from ClientBase)

See Also

Reference

MetadataRetrievalClient Class
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode Class
See Also Example Members
[image]

Represents a category or operation node returned by IMetadataBrowseHandler.Browse and IMetadataSearchHandler.Search methods.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNode

Syntax

Visual Basic
<MessageContractAttribute> _
Public NotInheritable Class MetadataRetrievalNode
C#
[MessageContractAttribute]
public sealed class MetadataRetrievalNode
C++
[MessageContractAttribute]
public ref class MetadataRetrievalNode sealed
J#
/** @attribute MessageContractAttribute() */
public final class MetadataRetrievalNode
JScript
MessageContractAttribute
public final class MetadataRetrievalNode

Example

MetadataRetrievalNode is used within metadata browse, search, and resolve. For examples on how to use MetadataRetrievalNode, see Browse and Search.

Remarks

This class is used to represent a category and/or operation node. These nodes can be used by the adapter to resolve metadata and to generate a resulting WCF contract. The nodes can be classified as inbound, outbound, or both.

You can use the IsOperation property of this class to determine the MetadataRetrievalNode type. If the IsOperation property is set to true, the node type is operation; otherwise, the node type is category.

You can use the Direction property to specify whether the node is inbound, outbound, or both.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.MetadataRetrievalNode

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace
IMetadataBrowseHandler
IMetadataSearchHandler


MetadataRetrievalNode Members
See Also Constructors Methods Properties
[image]

Represents a category or operation node returned by IMetadataBrowseHandler.Browse and IMetadataSearchHandler.Search methods.

The following tables list the members exposed by the MetadataRetrievalNode type.

Public Constructors

Name | Description
MetadataRetrievalNode | Overloaded. Initializes a new instance of the MetadataRetrievalNode class.
Top

Public Properties

 | Name | Description
public property | Description | Gets or sets the metadata node description.
public property | Direction | Gets or sets the direction in which the metadata node is being retrieved. There are two types of directions, Inbound and Outbound.
public property | DisplayName | Gets or sets the metadata node name that should be displayed by the metadata retrieval UI such as the Add Adapter Service Reference Visual Studio Plug-in and the Consume Adapter Service BizTalk Project Add-in.
public property | IsOperation | Gets or sets a value indicating whether the metadata node is an operation.
public property | NodeId | Gets or sets the full metadata node path, including the name. This name may be different from the display name.
 | Root | Gets the root metadata node.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | Overridden. Determines whether the current instance of MetadataRetrievalNode is equal to the one that is being passed in.
public method | GetHashCode | Overridden. Determines the hash code for the current instance of MetadataRetrievalNode.
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

MetadataRetrievalNode Class
Microsoft.ServiceModel.Channels Namespace
IMetadataBrowseHandler
IMetadataSearchHandler


MetadataRetrievalNode Constructor
[image]

Initializes a new instance of the MetadataRetrievalNode class.

Overload List

Name | Description
MetadataRetrievalNode () | Initializes an instance of the MetadataRetrievalNode class.
MetadataRetrievalNode (String) | Initializes an instance of the MetadataRetrievalNode class using the specified nodeId. This nodeId is used to retrieve an operation or a category from the metadata lookup.

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode Constructor ()
[image]

Initializes an instance of the MetadataRetrievalNode class.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New MetadataRetrievalNode

Syntax

Visual Basic
Public Sub New
C#
public MetadataRetrievalNode ()
C++
public:
MetadataRetrievalNode ()
J#
public MetadataRetrievalNode ()
JScript
public function MetadataRetrievalNode ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode Constructor (String)
See Also Example
[image]

Initializes an instance of the MetadataRetrievalNode class using the specified nodeId. This nodeId is used to retrieve an operation or a category from the metadata lookup.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim nodeId As String

Dim instance As New MetadataRetrievalNode(nodeId)

Syntax

Visual Basic
Public Sub New ( _
    nodeId As String _
)
C#
public MetadataRetrievalNode (
    string nodeId
)
C++
public:
MetadataRetrievalNode (
    String^ nodeId
)
J#
public MetadataRetrievalNode (
    String nodeId
)
JScript
public function MetadataRetrievalNode (
    nodeId : String
)

Parameters

nodeId

A unique identifier for an operation or category represented by this metadata retrieval node.

Example

The following code example creates a MetadataRetrievalNode object by passing in 'Calculator'. The direction of this node object is outbound by setting the Direction property to Outbound, and the type of this node object is category by setting the IsOperation property to false.

C# Copy Code
MetadataRetrievalNode calculatorCategory = new MetadataRetrievalNode("/Calculator");
calculatorCategory.Description = "Contains calculator operations";
calculatorCategory.Direction = MetadataRetrievalNodeDirections.Outbound;
calculatorCategory.DisplayName = "Calculator Category";
calculatorCategory.IsOperation = false;

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | Overridden. Determines whether the current instance of MetadataRetrievalNode is equal to the one that is being passed in.
public method | GetHashCode | Overridden. Determines the hash code for the current instance of MetadataRetrievalNode.
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

MetadataRetrievalNode Class
Microsoft.ServiceModel.Channels Namespace
IMetadataBrowseHandler
IMetadataSearchHandler


MetadataRetrievalNode.Equals Method
[image]

Determines whether the current instance of MetadataRetrievalNode is equal to the one that is being passed in.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNode
Dim obj As Object
Dim returnValue As Boolean

returnValue = instance.Equals(obj)

Syntax

Visual Basic
Public Overrides Function Equals ( _
    obj As Object _
) As Boolean
C#
public override bool Equals (
    Object obj
)
C++
public:
virtual bool Equals (
    Object^ obj
) override
J#
public boolean Equals (
    Object obj
)
JScript
public override function Equals (
    obj : Object
) : boolean

Parameters

obj

The object or the metadata retrieval node that needs to be compared with this instance.

Return Value

true if the object being passed in is equal to this instance of MetadataRetrievalNode; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode.GetHashCode Method
[image]

Determines the hash code for the current instance of MetadataRetrievalNode.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNode
Dim returnValue As Integer

returnValue = instance.GetHashCode

Syntax

Visual Basic
Public Overrides Function GetHashCode As Integer
C#
public override int GetHashCode ()
C++
public:
virtual int GetHashCode () override
J#
public int GetHashCode ()
JScript
public override function GetHashCode () : int

Return Value

An integer hash code for the current instance of MetadataRetrievalNode.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode Properties
[image]

Public Properties

 | Name | Description
public property | Description | Gets or sets the metadata node description.
public property | Direction | Gets or sets the direction in which the metadata node is being retrieved. There are two types of directions, Inbound and Outbound.
public property | DisplayName | Gets or sets the metadata node name that should be displayed by the metadata retrieval UI such as the Add Adapter Service Reference Visual Studio Plug-in and the Consume Adapter Service BizTalk Project Add-in.
public property | IsOperation | Gets or sets a value indicating whether the metadata node is an operation.
public property | NodeId | Gets or sets the full metadata node path, including the name. This name may be different from the display name.
 | Root | Gets the root metadata node.

See Also

Reference

MetadataRetrievalNode Class
Microsoft.ServiceModel.Channels Namespace
IMetadataBrowseHandler
IMetadataSearchHandler


MetadataRetrievalNode.Description Property
[image]

Gets or sets the metadata node description.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNode
Dim value As String

value = instance.Description

instance.Description = value

Syntax

Visual Basic
<MessagePropertyAttribute(Name:="Description")> _
Public Property Description As String
C#
[MessagePropertyAttribute(Name="Description")]
public string Description { get; set; }
C++
[MessagePropertyAttribute(Name=L"Description")]
public:
property String^ Description {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_Description ()

/** @property */
public void set_Description (String value)
JScript
public function get Description () : String

public function set Description (value : String)

Property Value

A string that contains the metadata node description.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode.Direction Property
[image]

Gets or sets the direction in which the metadata node is being retrieved. There are two types of directions, Inbound and Outbound.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNode
Dim value As MetadataRetrievalNodeDirections

value = instance.Direction

instance.Direction = value

Syntax

Visual Basic
<MessagePropertyAttribute(Name:="Direction")> _
Public Property Direction As MetadataRetrievalNodeDirections
C#
[MessagePropertyAttribute(Name="Direction")]
public MetadataRetrievalNodeDirections Direction { get; set; }
C++
[MessagePropertyAttribute(Name=L"Direction")]
public:
property MetadataRetrievalNodeDirections Direction {
    MetadataRetrievalNodeDirections get ();
    void set (MetadataRetrievalNodeDirections value);
}
J#
/** @property */
public MetadataRetrievalNodeDirections get_Direction ()

/** @property */
public void set_Direction (MetadataRetrievalNodeDirections value)
JScript
public function get Direction () : MetadataRetrievalNodeDirections

public function set Direction (value : MetadataRetrievalNodeDirections)

Remarks

MetadataRetrievalNodeDirections is set on the MetadataRetrievalNode to set the direction. The direction is used by the Add Adapter Service Reference Visual Studio Plug-in and the Consume Adapter Service BizTalk Project Add-in tools to filter based on a user-selected option). If the user selects Service (Inbound operations) in the Select contract type dropdown, a list of operations with an inbound direction will be returned. If the user selects Client (Outbound operations) in the Select contract type dropdown, a list of operations with an outbound direction will be returned.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace
IMetadataBrowseHandler
IMetadataResolverHandler
IMetadataSearchHandler


MetadataRetrievalNode.DisplayName Property
[image]

Gets or sets the metadata node name that should be displayed by the metadata retrieval UI such as the Add Adapter Service Reference Visual Studio Plug-in and the Consume Adapter Service BizTalk Project Add-in.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNode
Dim value As String

value = instance.DisplayName

instance.DisplayName = value

Syntax

Visual Basic
<MessagePropertyAttribute(Name:="DisplayName")> _
Public Property DisplayName As String
C#
[MessagePropertyAttribute(Name="DisplayName")]
public string DisplayName { get; set; }
C++
[MessagePropertyAttribute(Name=L"DisplayName")]
public:
property String^ DisplayName {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_DisplayName ()

/** @property */
public void set_DisplayName (String value)
JScript
public function get DisplayName () : String

public function set DisplayName (value : String)

Property Value

A string that contains the metadata node name that should be displayed by the metadata retrieval UI.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode.IsOperation Property
[image]

Gets or sets a value indicating whether the metadata node is an operation.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNode
Dim value As Boolean

value = instance.IsOperation

instance.IsOperation = value

Syntax

Visual Basic
<MessagePropertyAttribute(Name:="IsOperation")> _
Public Property IsOperation As Boolean
C#
[MessagePropertyAttribute(Name="IsOperation")]
public bool IsOperation { get; set; }
C++
[MessagePropertyAttribute(Name=L"IsOperation")]
public:
property bool IsOperation {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_IsOperation ()

/** @property */
public void set_IsOperation (boolean value)
JScript
public function get IsOperation () : boolean

public function set IsOperation (value : boolean)

Property Value

true if the metadata node is an operation; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode.NodeId Property
[image]

Gets or sets the full metadata node path, including the name. This name may be different from the display name.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNode
Dim value As String

value = instance.NodeId

instance.NodeId = value

Syntax

Visual Basic
<MessagePropertyAttribute(Name:="NodeId")> _
Public Property NodeId As String
C#
[MessagePropertyAttribute(Name="NodeId")]
public string NodeId { get; set; }
C++
[MessagePropertyAttribute(Name=L"NodeId")]
public:
property String^ NodeId {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_NodeId ()

/** @property */
public void set_NodeId (String value)
JScript
public function get NodeId () : String

public function set NodeId (value : String)

Property Value

A string representing the node ID.

Remarks

You should choose a meaningful name for the node ID To identify the node. Suppose your adapter contains many operations, you should include category, path, and other relevant information in the node ID to identify the node . For example, purchase order operations might be named using the template "PurchaseOrder" + MetadataRetrievalNode.Root.NodeId + "ApproveOrder".

Note
Use MetadataRetrievalNode.Root.NodeId for the root node instead of hard-coding a node delimiter.

Important
Avoid using special characters, such as & or _, in your node ID and namespace. If you use special characters, the generated WSDL will be incorrect and not consumable. Be sure that you follow the WSDL specification when you name the node ID and the namespace.

In particular, when using these methods Browse, Search, ResolveOperationMetadata, and ResolveTypeMetadata, make sure that you follow the WSDL guidance when you name the node ID.

When using these classes, Adapter derived classes, OperationMetadata derived classes, and TypeMetadata derived classes, make sure that you follow the WSDL guidance when you name the namespace.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNode.Root Property
[image]

Gets the root metadata node.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As MetadataRetrievalNode

value = MetadataRetrievalNode.Root

Syntax

Visual Basic
Public Shared ReadOnly Property Root As MetadataRetrievalNode
C#
public static MetadataRetrievalNode Root { get; }
C++
public:
static property MetadataRetrievalNode^ Root {
    MetadataRetrievalNode^ get ();
}
J#
/** @property */
public static MetadataRetrievalNode get_Root ()
JScript
public static function get Root () : MetadataRetrievalNode

Property Value

The root metadata node.

Remarks

Instead of hard-coding a node delimiter directly in your code, you should build your node ID path by using MetadataRetrievalNode.Root.NodeId. This will ensure that your adapters use a consistent delimiter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNode Class
MetadataRetrievalNode Members
Microsoft.ServiceModel.Channels Namespace


MetadataRetrievalNodeDirections Enumeration
See Also Example
[image]

Represents the direction of the parent message of the metadata node that is being retrieved. The direction can be either inbound or outbound or both.

Namespace: Microsoft.ServiceModel.Channels
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNodeDirections

Syntax

Visual Basic
<FlagsAttribute> _
Public Enumeration MetadataRetrievalNodeDirections
C#
[FlagsAttribute]
public enum MetadataRetrievalNodeDirections
C++
[FlagsAttribute]
public enum class MetadataRetrievalNodeDirections
J#
/** @attribute FlagsAttribute() */
public enum MetadataRetrievalNodeDirections
JScript
FlagsAttribute
public enum MetadataRetrievalNodeDirections

Members

Member name | Description
Inbound | The direction of the parent message of the metadata node that is being retrieved is inbound.
Outbound | The direction of the parent message of the metadata node that is being retrieved is outbound.

Example

The following code example shows how this property is used within MetadataRetrievalNode to create a category node that can contain both inbound and outbound operations.

C# Copy Code
// Create Echo Category Node
MetadataRetrievalNode echoCategory = new MetadataRetrievalNode("/EchoCategory");
echoCategory.Description = "This category contains inbound and outbound operations to echo data.";
echoCategory.Direction = MetadataRetrievalNodeDirections.Inbound | MetadataRetrievalNodeDirections.Outbound;
echoCategory.DisplayName = "Echo Category";
echoCategory.IsOperation = false;

Remarks

If an operation is marked as inbound, this implies that the adapter translates an incoming line-of-business system call to a WCF message and dispatches it to a WCF service. Similarly, if the operation is marked as outbound, it implies that the adapter will translate the WCF message from a WCF client to a line-of-business system-specific call and will send it to the line-of-business system.

This property is used by the Add Adapter Service Reference Visual Studio Plug-in and Consume Adapter Service BizTalk Project Add-in tools to filter the categories and operations when "Select contract type" is selected by the end user.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

Microsoft.ServiceModel.Channels Namespace


Microsoft.ServiceModel.Channels.Common Namespace
Provides the base classes, interfaces, data types, events, and event handlers that are used to create an adapter by using the WCF LOB Adapter SDK.

Classes

Class | Description
Adapter | Represents a base class for the adapter developed using the WCF LOB Adapter SDK.
AdapterBinding | Represents a base class that you should use when creating a binding for an Adapter. By setting the different properties, you can indicate whether your adapter supports metadata browse, search, retrieve, and other features.
AdapterEnvironmentSettings | Represents the adapter context. Usually the adapter has a static instance of the adapter context and uses it to initialize the Adapter base class.
AdapterException | Represents the exception that is thrown when a general adapter error occurs.
AdapterSettings | Represents adapter settings that control different behaviors of an adapter. You can modify these settings in the constructor of the Adapter class.
AdapterTrace | Provides a standard way to trace the execution of code and associated trace messages with the source during the lifetime of your adapter. To view the WCF compliant formatted adapter traces, use the Service Trace Viewer Tool. This class cannot be inherited.
BasicTypeMetadata | Represents a basic data type with XmlSchemaSimpleTypeContent. It allows additional restriction, union, and list constructs to be applied to a simple type.
CacheSettings | Encapsulates the settings that control the adapter metadata cache.
CharTypeMetadata | Represents a specific character type for serialization.
CommonCacheSettings | Represents the common cache settings.
ComplexQualifiedType | Represents an adapter-specific complex qualified type. This class defines the adapter-specific complex type equivalent of the World Wide Web Consortium (W3C) XML schema complex type definition.
ConnectionException | Represents the ConnectionException that is thrown when a connection-specific error occurs.
ConnectionManagerSettings | Represents the connection manager settings. This class cannot be inherited.
ConnectionPoolSettings | Represents the settings that control the connection pool. This class cannot be inherited.
ConnectionUri | Represents a connection string to a target system. It can be only used as a base class.
CredentialsException | The exception that is thrown when access to the adapter's target system is denied or client credentials were not passed to the adapter.
DurationTypeMetadata | Represents a specific duration type for serialization.
EnumTypeMetadata | Represents a base class for enumerated. This class cannot be inherited.
GuidTypeMetadata | Represents a specific Guid type for serialization.
InboundReply | Represents an adapter message inbound reply. It provides a reply that is correlated to an incoming request.
InvalidUriException | Represents an exception that is thrown when the URI doesn’t have the required components to connect to the target system. This class cannot be inherited.
ListenerException | This exception is thrown when there is an error receiving a message in an inbound handler.
MessageTraceRecord | Represents a message TraceRecord that can be used by the AdapterTrace class to trace adapter activity in a manner compliant with Windows Communication Foundation (WCF).
MessagingSettings | Encapsulates the settings that control the Adapter messaging.
MetadataException | The exception that is thrown when there is an error during metadata retrieval, browse, or search.
MetadataLookup | Represents a view over the adapter metadata cache. This class is used to look up operation metadata definitions required at runtime.
MetadataSettings | Represents a class that contains settings that control the adapter metadata.
OperationMetadata | Represents the base class for an operation metadata. Use ParameterizedOperationMetadata to create an operation definition with parameters and results.
OperationMetadataTraceRecord | Used to trace the execution sequence of the code and to trace any error messages or warnings pertaining to OperationMetadata in a Windows Communication Foundation (WCF) compliant format.
OperationParameter | Defines metadata for a parameter within an operation.
OperationResult | Defines metadata for a result returned by an operation.
ParameterizedOperationMetadata | Represents the metadata for an adapter's operation with input operation parameters and output results.
PerformanceCountersSettings | Represents the performance counters settings. This class cannot be inherited.
QualifiedType | Defines a qualified type. This class can be only used as a base class.
QualifiedTypeContainer | Defines an operation parameter, an operation result, a type member, or a custom member.
SimpleQualifiedType | Represents a simple World Wide Web Consortium (W3C) XML Schema primitive type for defining metadata for an operation parameter, operation result, and/or a type member.
StreamTypeMetadata | Represents a type that can be streamed.
StrongDataSetMetadata |
StructuredTypeMetadata | Represents the metadata for an adapter's type with type members.
TargetSystemException | Represents an exception that is thrown when there is an error on the target adapter's system.
TraceRecord | Used by AdapterTrace to trace the execution sequence of the code and to trace any informational data, error messages, or warnings in-WCF compliant format. This class can be only used as a base class.
TypeMember | Defines a type member in a StructuredTypeMetadata.
TypeMetadata | Represents the base class for a type metadata. Use StructuredTypeMetadata to create types with members. This class can be only used as a base class.
TypeMetadataCollection | Defines a collection of TypeMetadata objects.
TypeMetadataTraceRecord | Used to trace the execution sequence of the code and also to trace any error messages or warnings pertaining to TypeMetadata in a Windows Communication Foundation compliant format.
UnsupportedOperationException | Represents an exception that is thrown when the adapter receives a message with an Action that can't be mapped to any of the adapter's supported operations.
WeakDataSetMetadata |
XmlReaderGenerationException | Represents an exception that is thrown when there is an error generating data for an XmlReader.
XmlReaderParsingException | Represents an exception that is thrown when there is an error parsing data for an XmlReader.
XmlSchemaExportContext | Defines the context while building schemas for generating WSDL. It includes the set of schemas that will be added as part of the generated WSDL and all the namespaces of the operation, complex types along with their prefixes, and the default metadata namespace for the WSDL generation.
XmlWriterGenerationException | Represents an exception that is thrown when there is an error generating data for an XmlWriter.
XmlWriterParsingException | Represents an exception that is thrown when there is an error parsing data for an XmlWriter

Interfaces

Interface | Description
IAsyncInboundHandler | Represents an interface for receiving data from a target system using asynchronous method calls. This class contains asynchronous variants of methods defined in the IInboundHandler.
IAsyncOutboundHandler | Represents an interface for sending data to a target system using asynchronous method calls.
IConnection | Represents an interface for a connection. You need to implement this interface to define the connection to the target system.
IConnectionFactory | Represents an interface for a connection factory.
IConnectionHandler | Represents the base interface for the metadata and message exchange connection handlers.
IInboundHandler | Represents an interface for handling inbound requests from the target line-of-business (LOB) system.
IInboundReply | Used to provide a reply that is correlated to an incoming request.
IMetadataBrowseHandler | Represents an interface for performing a connection-based browse for metadata from the target system.
IMetadataResolverHandler | Represents an interface for retrieving operation and type metadata from the target system. It takes in an absolute node identifier and provides its metadata using the WCF LOB Adapter SDK’s metadata object model. This metadata object model is used by the dynamic contract builder to generate the WCF contract.
IMetadataSearchHandler | Defines an interface for performing a connection-based search for metadata from the target system.
IOutboundHandler | Represents an interface for handling outbound data.
IWsdlRetrieval | Supports the construction of custom WSDL. You need to implement this interface and override the BuildWsdlRetrieval method if you want to provide your own WSDL or modify the one generated by the WCF LOB Adapter SDK.

Enumerations

Enumeration | Description
OperationParameterDirection | Describes the direction of a parameter: In, Out, or InOut, when defining an OperationParameter within ParameterizedOperationMetadata.
SupportedInboundChannels | Describes the supported inbound channel types supported by the adapter.


Adapter Class
See Also Example Members
[image]

Represents a base class for the adapter developed using the WCF LOB Adapter SDK.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As Adapter

Syntax

Visual Basic
Public MustInherit Class Adapter
    Inherits TransportBindingElement
    Implements ITransactedBindingElement
C#
public abstract class Adapter : TransportBindingElement, ITransactedBindingElement
C++
public ref class Adapter abstract : public TransportBindingElement, ITransactedBindingElement
J#
public abstract class Adapter extends TransportBindingElement implements ITransactedBindingElement
JScript
public abstract class Adapter extends TransportBindingElement implements ITransactedBindingElement

Example

See example section of AdapterBinding for imperative and configuration code examples of using the adapter as a WCF binding.

Example 1- The following code demonstrates how the adapter binding element is used in the configuration file by the adapter consumer.

To use this adapter within a custom binding and set the properties through configuration, you can use another class that derives from the BindingElementExtensionElement class, generated by the WCF LOB Adapter Development Wizard.

The following is a sample configuration used by the adapter consumer.

Copy Code
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <system.serviceModel>
    <bindings>
      <customBinding>
        <binding name="MyCustomSampleAdapterBinding">
          <privacyNoticeAt url="http://www.microsoft.com" />
          <sampleAdapterTransport overrideWsdlBuilder="false" usePredefinedSchemas="true"
            count="4" enablePerfCounters="true" enableConnectionPooling="true" />
        </binding>
      </customBinding>
    </bindings>
    <client>
      <endpoint address="sample://host:10000/r/db?Protocol=p&amp;Driver=x"
                binding="customBinding"
                bindingConfiguration="MyCustomSampleAdapterBinding"
                contract="SampleContract"
                name="SampleAdapterBinding_SampleContract" />
    </client>
    <extensions>
      <bindingElementExtensions>
        <add name="sampleAdapterTransport" type="My.Samples.CodeSnippets.SampleAdapterBindingElementExtensionElement, SampleAdapter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0fef9fb4e7b46f99"/>
      </bindingElementExtensions>
    </extensions>
  </system.serviceModel>
</configuration>

Example 2 -The following code example shows how to expose an adapter setting as a binding property.

C# Copy Code
public class SampleAdapter : Adapter
{
    // Scheme associated with the adapter
    internal const string SCHEME = "sample";
    // Namespace for the proxy that will be generated from the adapter schema
    internal const string SERVICENAMESPACE = "sample://My.Samples.CodeSnippets";
    // Initializes the AdapterEnvironmentSettings class
    private static AdapterEnvironmentSettings environmentSettings = new AdapterEnvironmentSettings();

    #region Custom Generated Fields
    private int count;
    #endregion Custom Generated Fields

    #region  Constructor

    /// <summary>
    /// Initializes a new instance of the SampleAdapter class
    /// </summary>
    public SampleAdapter()
        : base(environmentSettings)
    {
        // disable performance counters by default
        environmentSettings.PerformanceCounters.Enabled = false;

        // enable connection pooling by default
        this.Settings.ConnectionPool.EnablePooling = true;
    }

    /// <summary>
    /// Initializes a new instance of the SampleAdapter class with a binding
    /// </summary>
    public SampleAdapter(SampleAdapter binding)
        : base(binding)
    {
        this.Count = binding.Count;
        this.EnablePerfCounters = binding.EnablePerfCounters;
        this.EnableConnectionPooling = binding.EnableConnectionPooling;
    }

    #endregion Constructor

    #region Custom Generated Properties

    [System.Configuration.ConfigurationProperty("count", DefaultValue = 4)]
    public int Count
    {
        get
        {
            return this.count;
        }
        set
        {
            this.count = value;
        }
    }

    [System.Configuration.ConfigurationProperty("enablePerfCounters", DefaultValue = false)]
    public bool EnablePerfCounters
    {
        get
        {
            return environmentSettings.PerformanceCounters.Enabled;
        }
        set
        {
            environmentSettings.PerformanceCounters.Enabled = value;
        }
    }

    [System.Configuration.ConfigurationProperty("enableConnectionPooling", DefaultValue = true)]
    public bool EnableConnectionPooling
    {
        get
        {
            return this.Settings.ConnectionPool.EnablePooling;
        }
        set
        {
            this.Settings.ConnectionPool.EnablePooling = value;
        }
    }

    #endregion Custom Generated Properties
    ...
}

Remarks

This is the base class that ties all of the components of the WCF LOB Adapter SDK to the underlying Windows Communication Foundation (WCF). It is a starting point for creating a custom binding to communicate with existing line-of-business systems. The WCF service model uses this class to create factory objects that implement the IChannelFactory and IChannelListener interfaces.

When you subclass Adapter, you are building a WCF TransportBindingElement object. This Adapter-derived class is added to the CreateBindingElements method of the AdapterBinding derived class, so the adapter can be surfaced as a WCF binding.

To register the adapter binding element in WCF configuration using <bindingElementExtension>, you need to subclass BindingElementExtensionElement. Similarly, to register the adapter binding in WCF configuration (using <bindingExtension>), you need to subclass StandardBindingElement. The following is a sample WCF configuration for registering the binding and binding element extension.

Copy Code
  <system.serviceModel>
    <extensions>
      <bindingElementExtensions>
        <add name="sqlAdapterChannel" type="Microsoft.Adapters.Samples.Sql.SQLAdapterBindingElementExtensionElement,SQLAdapter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ea0c073d196f1a60" />
      </bindingElementExtensions>
      <bindingExtensions>
        <add name="sqlAdapterBinding" type="Microsoft.Adapters.Samples.Sql.SQLAdapterBindingCollectionElement,SQLAdapter, Version=1.0.0.0, Culture=neutral, PublicKeyToken=ea0c073d196f1a60" />
      </bindingExtensions>
    </extensions>
  </system.serviceModel>

Adapter developers can provide customer properties on the Adapter-derived class.

The Add Adapter Service Reference Visual Studio Plug-in uses Adapter's StandardBindingElement derived class to display binding properties to the adapter consumer at design-time.

All the Adapter and AdapterBinding related classes are generated by the WCF LOB Adapter Development Wizard. The wizard generates the subclasses of following classes for creating and configuring an adapter as a WCF Binding.

  • Adapter

  • BindingElementExtensionElement

  • AdapterBinding

  • StandardBindingElement

The binding properties defined on the Adapter derived class need to be made available on the AdapterBinding derived class, that is, if the adapter consumer is accessing the adapter as a WCF binding, and not as a WCF binding element for use within another custom binding. You need to define properties in the StandardBindingElement and BindingElementExtensionElement derived classes so that the adapter consumer can set the properties in the app.config file.

The following table shows the relationship between those classes and the extensions registered in the machine.config file.

MyAdapter classes | Derived from ASDK class | Equivalent class for registration with WCF configuration | Extension Registered in machine.config
MyAdapter | Adapter (derives from WCF TransportBindingElement) | MyAdapterBindingElementExtensionElement (derives from WCF BindingElementExtensionElement) | <bindingElementExtension>
MyAdapterBinding | AdapterBinding (derives from WCF Binding) | MyAdapterBindingElement (derives from WCF StandardBindingElement) | <bindingExtension>

Inheritance Hierarchy

System.Object
System.ServiceModel.Channels.BindingElement
System.ServiceModel.Channels.TransportBindingElement
Microsoft.ServiceModel.Channels.Common.Adapter

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterBinding


Adapter Members
See Also Methods Properties Constructors
[image]

Represents a base class for the adapter developed using the WCF LOB Adapter SDK.

The following tables list the members exposed by the Adapter type.

Protected Constructors

Name | Description
Adapter | Overloaded. Initializes a new instance of the Adapter class.
Top

Public Properties

 | Name | Description
public property | ManualAddressing | (inherited from TransportBindingElement)
public property | MaxBufferPoolSize | (inherited from TransportBindingElement)
public property | MaxReceivedMessageSize | (inherited from TransportBindingElement)
public property | Scheme | Overridden. Gets the transport scheme for the URI that is used by the current Adapter object.
public property | TransactedReceiveEnabled | Gets a value indicating whether the transacted receive is enabled or not.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | BuildChannelFactory | Overridden. Initializes a channel factory for producing channels of a specified type from the specified BindingContext object.
public method | BuildChannelListener | Overridden. Initializes a channel listener for accepting channels of a specified type from the specified BindingContext object.
public method | CanBuildChannelFactory | Overridden. Returns a value indicating whether the binding element can build a channel factory for a specific type of channel.
public method | CanBuildChannelListener | Overridden. Returns a value indicating whether the binding element can build a channel listener for a specific type of channel.
public method | Clone | Overridden. Returns a deep copy of the current BindingElement object within the current Adapter object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetProperty | Overridden. (inherited from BindingElement)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | CloneAdapter | Returns a deep copy of the current Adapter object.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

Adapter Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterBinding


Adapter Constructor
[image]

Initializes a new instance of the Adapter class.

Overload List

Name | Description
Adapter (Adapter) | Initializes a new instance of the Adapter class using the specified Adapter object.
Adapter (AdapterEnvironmentSettings) |

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter Constructor (Adapter)
[image]

Initializes a new instance of the Adapter class using the specified Adapter object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim adapterToBeCloned As Adapter

Dim instance As New Adapter(adapterToBeCloned)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Protected Sub New ( _
    adapterToBeCloned As Adapter _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
protected Adapter (
    Adapter adapterToBeCloned
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
protected:
Adapter (
    Adapter^ adapterToBeCloned
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
protected Adapter (
    Adapter adapterToBeCloned
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
protected function Adapter (
    adapterToBeCloned : Adapter
)

Parameters

adapterToBeCloned

The Adapter object to be cloned.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter Constructor (AdapterEnvironmentSettings)
[image]

Initializes a new instance of the Adapter Class.Initializes a new instance of the Adapter Class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim settings As AdapterEnvironmentSettings

Dim instance As New Adapter(settings)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Protected Sub New ( _
    settings As AdapterEnvironmentSettings _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
protected Adapter (
    AdapterEnvironmentSettings settings
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
protected:
Adapter (
    AdapterEnvironmentSettings^ settings
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
protected Adapter (
    AdapterEnvironmentSettings settings
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
protected function Adapter (
    settings : AdapterEnvironmentSettings
)

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | BuildChannelFactory | Overridden. Initializes a channel factory for producing channels of a specified type from the specified BindingContext object.
public method | BuildChannelListener | Overridden. Initializes a channel listener for accepting channels of a specified type from the specified BindingContext object.
public method | CanBuildChannelFactory | Overridden. Returns a value indicating whether the binding element can build a channel factory for a specific type of channel.
public method | CanBuildChannelListener | Overridden. Returns a value indicating whether the binding element can build a channel listener for a specific type of channel.
public method | Clone | Overridden. Returns a deep copy of the current BindingElement object within the current Adapter object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetProperty | Overridden. (inherited from BindingElement)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | CloneAdapter | Returns a deep copy of the current Adapter object.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

Adapter Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterBinding


Adapter.BuildChannelFactory Method
[image]

Initializes a channel factory for producing channels of a specified type from the specified BindingContext object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As Adapter
Dim context As BindingContext
Dim returnValue As IChannelFactory(Of TChannel)

returnValue = instance.BuildChannelFactory(context)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")> _
Public Function BuildChannelFactory(Of TChannel) ( _
    context As BindingContext _
) As IChannelFactory(Of TChannel)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")]
public IChannelFactory<TChannel> BuildChannelFactory<TChannel> (
    BindingContext context
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1004:GenericMethodsShouldProvideTypeParameter")]
public:
generic<typename TChannel>
virtual IChannelFactory<TChannel>^ BuildChannelFactory (
    BindingContext^ context
) sealed
J#
JScript

Parameters

context

The specified BindingContext object.

Remarks

It throws a NotSupportedException if a channel type is not supported by the adapter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter.BuildChannelListener Method
[image]

Initializes a channel listener for accepting channels of a specified type from the specified BindingContext object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As Adapter
Dim context As BindingContext
Dim returnValue As IChannelListener(Of TChannel)

returnValue = instance.BuildChannelListener(context)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")> _
Public Function BuildChannelListener(Of TChannel As IChannel) ( _
    context As BindingContext _
) As IChannelListener(Of TChannel)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")]
public IChannelListener<TChannel> BuildChannelListener<TChannel> (
    BindingContext context
) where TChannel : IChannel
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1004:GenericMethodsShouldProvideTypeParameter")]
public:
generic<typename TChannel> where TChannel : IChannel
virtual IChannelListener<TChannel>^ BuildChannelListener (
    BindingContext^ context
) sealed
J#
JScript

Parameters

context

The specified BindingContext object.

Remarks

It throws a NotSupportedException if a channel type is not supported by the adapter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter.BuildConnectionFactory Method
See Also Example
[image]

Builds a connection factory from the specified ConnectionUri, ClientCredentials, and BindingContext objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim connectionUri As ConnectionUri
Dim clientCredentials As ClientCredentials
Dim context As BindingContext
Dim returnValue As IConnectionFactory

returnValue = Me.BuildConnectionFactory(connectionUri, clientCredentials, context)

Syntax

Visual Basic
Protected Friend MustOverride Function BuildConnectionFactory ( _
    connectionUri As ConnectionUri, _
    clientCredentials As ClientCredentials, _
    context As BindingContext _
) As IConnectionFactory
C#
protected internal abstract IConnectionFactory BuildConnectionFactory (
    ConnectionUri connectionUri,
    ClientCredentials clientCredentials,
    BindingContext context
)
C++
protected public:
virtual IConnectionFactory^ BuildConnectionFactory (
    ConnectionUri^ connectionUri,
    ClientCredentials^ clientCredentials,
    BindingContext^ context
) abstract
J#
protected abstract IConnectionFactory BuildConnectionFactory (
    ConnectionUri connectionUri,
    ClientCredentials clientCredentials,
    BindingContext context
)
JScript
protected internal abstract function BuildConnectionFactory (
    connectionUri : ConnectionUri,
    clientCredentials : ClientCredentials,
    context : BindingContext
) : IConnectionFactory

Parameters

connectionUri

The target Uri for the connection factory.

clientCredentials

The specified ClientCredentials to be used by the connection factory.

Context

The specified BindingContext object.

Return Value

An IConnectionFactory implemented object.

Example

The following code example shows how to build a connection factory.

C# Copy Code
protected override IConnectionFactory BuildConnectionFactory(
    ConnectionUri unifiedConnectionUri
    , ClientCredentials clientCredentials
    , BindingContext context)
{
    return new EchoAdapterConnectionFactory(unifiedConnectionUri, clientCredentials, this);
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace
IConnectionFactory


Adapter.BuildConnectionUri Method
See Also Example
[image]

Creates a ConnectionUri object from the specified Uri object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim uri As Uri
Dim returnValue As ConnectionUri

returnValue = Me.BuildConnectionUri(uri)

Syntax

Visual Basic
Protected Friend MustOverride Function BuildConnectionUri ( _
    uri As Uri _
) As ConnectionUri
C#
protected internal abstract ConnectionUri BuildConnectionUri (
    Uri uri
)
C++
protected public:
virtual ConnectionUri^ BuildConnectionUri (
    Uri^ uri
) abstract
J#
protected abstract ConnectionUri BuildConnectionUri (
    Uri uri
)
JScript
protected internal abstract function BuildConnectionUri (
    uri : Uri
) : ConnectionUri

Parameters

Uri

The specified Uri object.

Return Value

A ConnectionUri object.

Example

The following example shows how to create a ConnectionUri object with the specified Uri.

C# Copy Code
/// <summary>
/// Creates a ConnectionUri instance from the provided Uri
/// </summary>
protected override ConnectionUri BuildConnectionUri(Uri uri)
{
    return new EchoAdapterConnectionUri(uri);
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter.BuildWsdlRetrieval Method
See Also Example
[image]

Used to build an IWsdlRetrieval object. The WCF LOB Adapter SDK provides an internal WSDL builder that is used in this method. You can override this method to provide your own implementation of a WSDL document, rather than the one generated by the WCF LOB Adapter SDK.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim metadataLookup As MetadataLookup
Dim returnValue As IWsdlRetrieval

returnValue = Me.BuildWsdlRetrieval(metadataLookup)

Syntax

Visual Basic
Protected Friend Overridable Function BuildWsdlRetrieval ( _
    metadataLookup As MetadataLookup _
) As IWsdlRetrieval
C#
protected internal virtual IWsdlRetrieval BuildWsdlRetrieval (
    MetadataLookup metadataLookup
)
C++
protected public:
virtual IWsdlRetrieval^ BuildWsdlRetrieval (
    MetadataLookup^ metadataLookup
)
J#
protected IWsdlRetrieval BuildWsdlRetrieval (
    MetadataLookup metadataLookup
)
JScript
protected internal function BuildWsdlRetrieval (
    metadataLookup : MetadataLookup
) : IWsdlRetrieval

Parameters

metadataLookup

The specified MetadataLookup object.

Return Value

An IWsdlRetrieval object using the specified MetadataLookup object.

Example

The following code example shows how to use a custom implementation of dynamic contract (WSDL) builder by overriding the BuildWsdlRetrieval method.

C# Copy Code
protected override IWsdlRetrieval BuildWsdlRetrieval(MetadataLookup metadataLookup)
{
    if (OverrideWsdlBuilder)
    {
        return new StaticWsdlBuilder(metadataLookup);
    }
    return base.BuildWsdlRetrieval(metadataLookup);
}

The following code is an implementation of a custom WSDL builder that implements the IWsdlRetrieval interface.

C# Copy Code
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.ServiceModel.Channels;
using Microsoft.ServiceModel.Channels.Common;
using System.Web.Services.Description;
using System.IO;

namespace My.Samples.CodeSnippets
{
    class StaticWsdlBuilder : IWsdlRetrieval
    {
        public ServiceDescription GetWsdl(MetadataRetrievalNode[] nodes, Uri uri, TimeSpan timeout)
        {
            // For illustrative purposes, ignoring the nodes
            // and just returning a hard coded WSDL
            string[] wsdlFiles = wsdlFiles = Directory.GetFiles(@"C:/temp/", "SayHelloWorld.wsdl");
            ServiceDescription desc = System.Web.Services.Description.ServiceDescription.Read(wsdlFiles[0]);
            return desc;
        }
    }
}

Remarks

This method can be overridden by the adapter developer when:

  • The WSDL document generated by the WCF LOB Adapter SDK doesn't meet business needs. The adapter developer wants to extend the base class generated ServiceDescription (WSDL) with additional information such as annotations and documentation.

  • There is a need for the developer to provide a static WSDL instead of one generated based on the selected MetadataRetrievalNode nodes provided by the consumer.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter.CanBuildChannelFactory Method
[image]

Returns a value indicating whether the binding element can build a channel factory for a specific type of channel.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As Adapter
Dim context As BindingContext
Dim returnValue As Boolean

returnValue = instance.CanBuildChannelFactory(context)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")> _
Public Overrides NotOverridable Function CanBuildChannelFactory(Of TChannel) ( _
    context As BindingContext _
) As Boolean
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")]
public override sealed bool CanBuildChannelFactory<TChannel> (
    BindingContext context
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1004:GenericMethodsShouldProvideTypeParameter")]
public:
generic<typename TChannel>
virtual bool CanBuildChannelFactory (
    BindingContext^ context
) override sealed
J#
JScript

Parameters

context

The specified BindingContext object to check the capability of building the channel factory.

Return Value

true if a channel factory can be built using the supplied context; otherwise, false.

Remarks

This method returns true if the adapter binding element created one of the following channels and if the adapter supports the outbound handler.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace
IOutputChannel
IRequestChannel
IOutputSessionChannel
IRequestSessionChannel


Adapter.CanBuildChannelListener Method
[image]

Returns a value indicating whether the binding element can build a channel listener for a specific type of channel.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As Adapter
Dim context As BindingContext
Dim returnValue As Boolean

returnValue = instance.CanBuildChannelListener(context)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")> _
Public Overrides NotOverridable Function CanBuildChannelListener(Of TChannel As IChannel) ( _
    context As BindingContext _
) As Boolean
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")]
public override sealed bool CanBuildChannelListener<TChannel> (
    BindingContext context
) where TChannel : IChannel
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1004:GenericMethodsShouldProvideTypeParameter")]
public:
generic<typename TChannel> where TChannel : IChannel
virtual bool CanBuildChannelListener (
    BindingContext^ context
) override sealed
J#
JScript

Parameters

context

The BindingContext to check.

Return Value

true if a channel listener can be built using the supplied context; otherwise, false.

Remarks

This method returns true if the adapter binding element created one of the following channels and if the adapter supports the inbound handler.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace
IInputChannel
IReplyChannel
IInputSessionChannel
IReplySessionChannel


Adapter.Clone Method
[image]

Returns a deep copy of the current BindingElement object within the current Adapter object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As Adapter
Dim returnValue As BindingElement

returnValue = instance.Clone

Syntax

Visual Basic
Public Overrides NotOverridable Function Clone As BindingElement
C#
public override sealed BindingElement Clone ()
C++
public:
virtual BindingElement^ Clone () override sealed
J#
public final BindingElement Clone ()
JScript
public override final function Clone () : BindingElement

Return Value

A BindingElement object containing a copy of the current BindingElement object within the current Adapter object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter.CloneAdapter Method
[image]

Returns a deep copy of the current Adapter object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim returnValue As Adapter

returnValue = Me.CloneAdapter

Syntax

Visual Basic
Protected MustOverride Function CloneAdapter As Adapter
C#
protected abstract Adapter CloneAdapter ()
C++
protected:
virtual Adapter^ CloneAdapter () abstract
J#
protected abstract Adapter CloneAdapter ()
JScript
protected abstract function CloneAdapter () : Adapter

Return Value

An Adapter object containing a deep copy of the current Adapter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter.IsHandlerSupported Method
See Also Example
[image]

Indicates whether the provided TConnectionHandler is supported by the current Adapter object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim returnValue As Boolean

returnValue = Me.IsHandlerSupported

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")> _
Protected Friend MustOverride Function IsHandlerSupported(Of TConnectionHandler As IConnectionHandler) As Boolean
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")]
protected internal abstract bool IsHandlerSupported<TConnectionHandler> () where TConnectionHandler : IConnectionHandler
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1004:GenericMethodsShouldProvideTypeParameter")]
protected public:
generic<typename TConnectionHandler> where TConnectionHandler : IConnectionHandler
virtual bool IsHandlerSupported () abstract
J#
JScript

Return Value

true if the provided TConnectionHandler is supported by the current Adapter object; otherwise, false.

Example

The following example shows that the adapter supports IInboundHandler, IOutboundHandler, IMetadataBrowseHandler and IMetadataResolverHandler.

C# Copy Code
protected override bool IsHandlerSupported<TConnectionHandler>()
{
    return (
          typeof(IInboundHandler) == typeof(TConnectionHandler)
        || typeof(IOutboundHandler) == typeof(TConnectionHandler)
        || typeof(IMetadataResolverHandler) == typeof(TConnectionHandler)
        || typeof(IMetadataBrowseHandler) == typeof(TConnectionHandler));
}

Remarks

The WCF LOB Adapter SDK checks if the adapter supports a particular handler by calling IsHandlerSupported method in the Adapter class implementation.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace
IConnectionHandler
IOutboundHandler
IAsyncOutboundHandler
IInboundHandler
IAsyncInboundHandler
IMetadataBrowseHandler
IMetadataSearchHandler
IMetadataResolverHandler


Adapter Properties
[image]

Public Properties

 | Name | Description
public property | ManualAddressing | (inherited from TransportBindingElement)
public property | MaxBufferPoolSize | (inherited from TransportBindingElement)
public property | MaxReceivedMessageSize | (inherited from TransportBindingElement)
public property | Scheme | Overridden. Gets the transport scheme for the URI that is used by the current Adapter object.
public property | TransactedReceiveEnabled | Gets a value indicating whether the transacted receive is enabled or not.

See Also

Reference

Adapter Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterBinding


Adapter.Namespace Property
[image]

Gets a value indicating the namespace used by the current Adapter object when generating XML Schema (XSD) and Web Service Description Language (WSDL).

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As String

value = Me.Namespace

Syntax

Visual Basic
Protected Friend MustOverride ReadOnly Property Namespace As String
C#
protected internal abstract string Namespace { get; }
C++
protected public:
virtual property String^ Namespace {
    String^ get () abstract;
}
J#
/** @property */
protected abstract String get_Namespace ()
JScript
protected internal abstract function get Namespace () : String

Property Value

A string containing the namespace used by the current Adapter object.

Remarks

The Namespace property returns the namespace of the current Adapter object. This value is used as the target namespace for the WSDL and any schemas during the WSDL generation.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter.Scheme Property
[image]

Gets the transport scheme for the URI that is used by the current Adapter object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As Adapter
Dim value As String

value = instance.Scheme

Syntax

Visual Basic
Public MustOverride ReadOnly Property Scheme As String
C#
public abstract string Scheme { get; }
C++
public:
virtual property String^ Scheme {
    String^ get () abstract override;
}
J#
/** @property */
public abstract String get_Scheme ()
JScript
public abstract function get Scheme () : String

Property Value

A string containing the scheme for the current Adapter object.

Remarks

The Scheme property returns the scheme of the current Adapter object. The scheme is the prefix of a URI. For example, if the URI is http://somehost/resource.txt, the scheme is http.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter.Settings Property
[image]

Gets the AdapterSettings object associated with the current Adapter object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As AdapterSettings

value = Me.Settings

Syntax

Visual Basic
Protected Friend ReadOnly Property Settings As AdapterSettings
C#
protected internal AdapterSettings Settings { get; }
C++
protected public:
property AdapterSettings^ Settings {
    AdapterSettings^ get ();
}
J#
/** @property */
protected AdapterSettings get_Settings ()
JScript
protected internal function get Settings () : AdapterSettings

Property Value

An AdapterSettings object from the current Adapter object.

Remarks

An AdapterSettings object containing adapter setting information.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace


Adapter.TransactedReceiveEnabled Property
[image]

Gets a value indicating whether the transacted receive is enabled or not.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As Adapter
Dim value As Boolean

value = instance.TransactedReceiveEnabled

Syntax

Visual Basic
Public ReadOnly Property TransactedReceiveEnabled As Boolean
C#
public bool TransactedReceiveEnabled { get; }
C++
public:
virtual property bool TransactedReceiveEnabled {
    bool get () sealed;
}
J#
/** @property */
public final boolean get_TransactedReceiveEnabled ()
JScript
public final function get TransactedReceiveEnabled () : boolean

Property Value

true if the transacted receive is enabled; otherwise, false.

Remarks

If the value of this property is true, the TryReceive method of the IInboundHandler will be called in the context of a transaction. This value can be controlled by using the SupportsTransactedInbound of the Messaging.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Adapter Class
Adapter Members
Microsoft.ServiceModel.Channels.Common Namespace
MessagingSettings
TryReceive


AdapterBinding Class
See Also Example Members
[image]

Represents a base class that you should use when creating a binding for an Adapter. By setting the different properties, you can indicate whether your adapter supports metadata browse, search, retrieve, and other features.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding

Syntax

Visual Basic
Public MustInherit Class AdapterBinding
    Inherits Binding
    Implements IAdapterBindingCapabilities, IBindingDeliveryCapabilities
C#
public abstract class AdapterBinding : Binding, IAdapterBindingCapabilities, IBindingDeliveryCapabilities
C++
public ref class AdapterBinding abstract : public Binding, IAdapterBindingCapabilities, IBindingDeliveryCapabilities
J#
public abstract class AdapterBinding extends Binding implements IAdapterBindingCapabilities, IBindingDeliveryCapabilities
JScript
public abstract class AdapterBinding extends Binding implements IAdapterBindingCapabilities, IBindingDeliveryCapabilities

Example

The WCF LOB Adapter Development Wizard generates a predefined binding for the adapter. This pre-defined binding contains one binding element of type Adapter. The following example demonstrates how to specify binding properties.

C# Copy Code
public class SampleAdapterBinding : AdapterBinding
    {
              . . .

        #region Custom Generated Fields
        private int count;
        private bool enablePerfCounters;
        private bool enableConnectionPooling;
        #endregion Custom Generated Fields

        #region Custom Generated Properties

        [System.Configuration.ConfigurationProperty("count", DefaultValue = 4)]
        public int Count
        {
            get
            {
                return this.count;
            }
            set
            {
                this.count = value;
            }
        }

        [System.Configuration.ConfigurationProperty("enablePerfCounters", DefaultValue = false)]
        public bool EnablePerfCounters
        {
            get
            {
                return this.enablePerfCounters;
            }
            set
            {
                this.enablePerfCounters = value;
            }
        }

        [System.Configuration.ConfigurationProperty("enableConnectionPooling", DefaultValue = true)]
        public bool EnableConnectionPooling
        {
            get
            {
                return this.enableConnectionPooling;
            }
            set
            {
                this.enableConnectionPooling = value;
            }
        }

        #endregion Custom Generated Properties

        public override BindingElementCollection CreateBindingElements()
        {
            BindingElementCollection bindingElements = new BindingElementCollection();
            bindingElements.Add(this.BindingElement);
            //Return the clone
            return bindingElements.Clone();
        }

    }
}

The following example shows the configuration for the binding. This class is generated by the WCF LOB Adapter Development Wizard.

C# Copy Code
namespace My.Samples.CodeSnippets
{
    public class SampleAdapterBindingElement : StandardBindingElement
    {

        [Browsable(true)]
        [DisplayName("Count")]
        [Description("Used within one of the operations for sample logic.")]
        [Category("Functional")]
        [System.Configuration.ConfigurationProperty("count", DefaultValue = 4)]
        public int Count
        {
            get
            {
                return ((int)(base["count"]));
            }
            set
            {
                base["count"] = value;
            }
        }

        [Browsable(true)]
        [DisplayName("Enable performance counters")]
        [Description("Updates the adapter setting.")]
        [Category("Adapter Settings")]
        [System.Configuration.ConfigurationProperty("enablePerfCounters", DefaultValue = false)]
        public bool EnablePerfCounters
        {
            get
            {
                return ((bool)(base["enablePerfCounters"]));
            }
            set
            {
                base["enablePerfCounters"] = value;
            }
        }

        /// <summary>
        /// Gets the type of the BindingElement
        /// </summary>
        protected override Type BindingElementType
        {
            get
            {
                return typeof(SampleAdapterBinding);
            }
        }

        /// <summary>
        /// Initializes the binding with the configuration properties
        /// </summary>
        protected override void InitializeFrom(Binding binding)
        {
            base.InitializeFrom(binding);
            SampleAdapterBinding adapterBinding = (SampleAdapterBinding)binding;
            this["count"] = adapterBinding.Count;
            this["enablePerfCounters"] = adapterBinding.EnablePerfCounters;
        }

        /// <summary>
        /// Applies the configuration
        /// </summary>
        protected override void OnApplyConfiguration(Binding binding)
        {
            if (binding == null)
                throw new ArgumentNullException("binding");

            SampleAdapterBinding adapterBinding = (SampleAdapterBinding)binding;
            adapterBinding.Count = (System.Int32)this["count"];
            adapterBinding.EnablePerfCounters = (System.Boolean)this["enablePerfCounters"];
        }

        /// <summary>
        /// Returns a collection of the configuration properties
        /// </summary>
        protected override ConfigurationPropertyCollection Properties
        {
            get
            {
                if (this.properties == null)
                {
                    ConfigurationPropertyCollection configProperties = base.Properties;
                    configProperties.Add(new ConfigurationProperty("count", typeof(System.Int32), 4, null, null, ConfigurationPropertyOptions.None));
                    configProperties.Add(new ConfigurationProperty("enablePerfCounters", typeof(System.Boolean), false, null, null, ConfigurationPropertyOptions.None));
                    this.properties = configProperties;
                }
                return this.properties;
            }
        }
    }
}

For the adapter consumer to set the binding properties, the relevant entries need to be in the app.config file. The following shows how the adapter consumer sets the binding properties.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <system.serviceModel>
    <bindings>
      <sampleAdapterBinding>
        <binding name="SampleAdapterBinding" closeTimeout="00:01:00"
          openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
          count="4"
          enablePerfCounters="false" enableConnectionPooling="true" />
      </sampleAdapterBinding>
    </bindings>
    <client>
      <endpoint address="sample://localhost:10000/DB2OLEDB/MyDB?Protocol=TCPIP&amp;Driver=Test"
        binding="sampleAdapterBinding" bindingConfiguration="SampleAdapterBinding"
        contract="SampleContract" name="SampleAdapterBinding_SampleContract" />
    </client>
  </system.serviceModel>
</configuration>

The WCF bindings can be used for services and clients imperatively in code and declaratively using configuration. The following example demonstrates how to specify a client binding in code for outbound operations.

C# Copy Code
using System;
using System.Collections.Generic;
using System.Text;
using System.ServiceModel;

namespace Proxy_Outbound
{
    class Program
    {
        static void Main(string[] args)
        {
            // ** USE THE BINDING AND ENDPOINT ADDRESS

            // Create binding - you must include hard dependency on adapter DLL and Microsoft.ServiceModel.Channels.DLL
            My.Samples.CodeSnippets.SampleAdapterBinding binding = new My.Samples.CodeSnippets.SampleAdapterBinding();
            // Set binding properties
            binding.OverrideWsdlBuilder = true;
            // Create endpoint address
            EndpointAddress address = new EndpointAddress("sample://localhost:10000/A/B?Protocol=X&Driver=Y");
            // Create a WCF client proxy with a given binding and endpoint address
            client = new SampleContractClient(binding, address);
            // Call operations using the client
            Console.WriteLine(client.Add(10.20, 11.80));
            // Close the client
            client.Close();
        }
    }
}

The following example shows how to specify a client binding in configuration for outbound operations. It requires the client endpoint configuration, as defined below.

Copy Code
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
    <system.serviceModel>
        <bindings>
            <sampleAdapterBinding>
                <binding name="SampleAdapterBinding" closeTimeout="00:01:00"
                    openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                    overrideWsdlBuilder="false"/>
            </sampleAdapterBinding>
        </bindings>
        <client>
            <endpoint address="sample://host:1000/X/Y?Protocol=TCPIP&amp;Driver=OLEDB"
binding="sampleAdapterBinding"
bindingConfiguration="SampleAdapterBinding"
                contract="SampleContract"
name="SampleAdapterBinding_SampleContract" />
        </client>
    </system.serviceModel>
</configuration>

This configuration can then be used by the calling application, as shown in the following example.

C# Copy Code
using System;
using System.Collections.Generic;
using System.Text;

namespace Proxy_Outbound
{
    class Program
    {
        static void Main(string[] args)
        {
            // Create a WCF client proxy with the given client endpoint configuration
            SampleContractClient client = new SampleContractClient();
            // Call operation from the proxy
     … …
            // Close the client
            client.Close();
        }
    }
}

Remarks

The adapter developer can set custom binding properties in this class, which can be set either programmatically or through configuration by the adapter consumer. The value of the custom properties are used by the channels and listeners produced by the factories of the binding.

Inheritance Hierarchy

System.Object
System.ServiceModel.Channels.Binding
Microsoft.ServiceModel.Channels.Common.AdapterBinding

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterBinding Members
See Also Methods Properties Constructors
[image]

Represents a base class that you should use when creating a binding for an Adapter. By setting the different properties, you can indicate whether your adapter supports metadata browse, search, retrieve, and other features.

The following tables list the members exposed by the AdapterBinding type.

Protected Constructors

Name | Description
AdapterBinding | Initializes a new instance of the AdapterBinding class.
Top

Public Properties

 | Name | Description
public property | AssuresOrderedDelivery | Gets a value indicating whether the binding can support assurances for the delivery of messages in the order they were sent.
public property | CloseTimeout | (inherited from Binding)
public property | ConnectionUriType | Gets the type of the adapter's specific ConnectionUri.
public property | DefaultXsdFileNamePrefix | Gets a value indicating the default XSD file name prefix.
public property | MessageVersion | (inherited from Binding)
public property | Name | (inherited from Binding)
public property | Namespace | (inherited from Binding)
public property | OpenTimeout | (inherited from Binding)
public property | QueuedDelivery | Gets a value indicating whether the binding can support the queued delivery of messages.
public property | ReceiveTimeout | (inherited from Binding)
public property | Scheme | Overridden. Gets the URI transport scheme for the channels and listeners that are configured with this binding.
public property | SendTimeout | (inherited from Binding)
public property | SupportsMetadataBrowse | Gets a value indicating whether this binding supports metadata browsing.
public property | SupportsMetadataGet | Gets a value indicating whether this binding supports metadata retrieval.
public property | SupportsMetadataSearch | Gets a value indicating whether this binding supports metadata searching.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | BuildChannelFactory | (inherited from Binding)
public method | BuildChannelFactory | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | CanBuildChannelFactory | (inherited from Binding)
public method | CanBuildChannelFactory | (inherited from Binding)
public method | CanBuildChannelListener | (inherited from Binding)
public method | CanBuildChannelListener | (inherited from Binding)
public method | CreateBindingElements | Overridden. Returns an ordered collection of binding elements contained in the current binding.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetProperty | (inherited from Binding)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

AdapterBinding Class
Microsoft.ServiceModel.Channels.Common Namespace


AdapterBinding Constructor
[image]

Initializes a new instance of the AdapterBinding class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New AdapterBinding

Syntax

Visual Basic
Protected Sub New
C#
protected AdapterBinding ()
C++
protected:
AdapterBinding ()
J#
protected AdapterBinding ()
JScript
protected function AdapterBinding ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterBinding Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | BuildChannelFactory | (inherited from Binding)
public method | BuildChannelFactory | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | BuildChannelListener | (inherited from Binding)
public method | CanBuildChannelFactory | (inherited from Binding)
public method | CanBuildChannelFactory | (inherited from Binding)
public method | CanBuildChannelListener | (inherited from Binding)
public method | CanBuildChannelListener | (inherited from Binding)
public method | CreateBindingElements | Overridden. Returns an ordered collection of binding elements contained in the current binding.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetProperty | (inherited from Binding)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

AdapterBinding Class
Microsoft.ServiceModel.Channels.Common Namespace


AdapterBinding.CreateBindingElements Method
See Also Example
[image]

Returns an ordered collection of binding elements contained in the current binding.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding
Dim returnValue As BindingElementCollection

returnValue = instance.CreateBindingElements

Syntax

Visual Basic
Public MustOverride Function CreateBindingElements As BindingElementCollection
C#
public abstract BindingElementCollection CreateBindingElements ()
C++
public:
virtual BindingElementCollection^ CreateBindingElements () abstract override
J#
public abstract BindingElementCollection CreateBindingElements ()
JScript
public abstract function CreateBindingElements () : BindingElementCollection

Return Value

A BindingElementCollection that contains the binding elements that are part of the current binding.

Example

The following example shows how to create a binding element collection.

C# Copy Code
public override BindingElementCollection CreateBindingElements()
{
   BindingElementCollection bindingElements = new BindingElementCollection();
   bindingElements.Add(new System.ServiceModel.Channels.PrivacyNoticeBindingElement());
   bindingElements.Add(this.BindingElement);
   //Return the clone
   return bindingElements.Clone();
}

Remarks

This method is used to add transport and protocol binding elements to the adapter binding. At the bottom of the channel stack is the Adapter class as the TransportBindingElement.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace

Other Resources

System.ServiceModel.Channels.Binding
System.ServiceModel.Channels.BindingElement


AdapterBinding Properties
[image]

Public Properties

 | Name | Description
public property | AssuresOrderedDelivery | Gets a value indicating whether the binding can support assurances for the delivery of messages in the order they were sent.
public property | CloseTimeout | (inherited from Binding)
public property | ConnectionUriType | Gets the type of the adapter's specific ConnectionUri.
public property | DefaultXsdFileNamePrefix | Gets a value indicating the default XSD file name prefix.
public property | MessageVersion | (inherited from Binding)
public property | Name | (inherited from Binding)
public property | Namespace | (inherited from Binding)
public property | OpenTimeout | (inherited from Binding)
public property | QueuedDelivery | Gets a value indicating whether the binding can support the queued delivery of messages.
public property | ReceiveTimeout | (inherited from Binding)
public property | Scheme | Overridden. Gets the URI transport scheme for the channels and listeners that are configured with this binding.
public property | SendTimeout | (inherited from Binding)
public property | SupportsMetadataBrowse | Gets a value indicating whether this binding supports metadata browsing.
public property | SupportsMetadataGet | Gets a value indicating whether this binding supports metadata retrieval.
public property | SupportsMetadataSearch | Gets a value indicating whether this binding supports metadata searching.

See Also

Reference

AdapterBinding Class
Microsoft.ServiceModel.Channels.Common Namespace


AdapterBinding.AssuresOrderedDelivery Property
[image]

Gets a value indicating whether the binding can support assurances for the delivery of messages in the order they were sent.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding
Dim value As Boolean

value = instance.AssuresOrderedDelivery

Syntax

Visual Basic
Public Overridable ReadOnly Property AssuresOrderedDelivery As Boolean
C#
public virtual bool AssuresOrderedDelivery { get; }
C++
public:
virtual property bool AssuresOrderedDelivery {
    bool get ();
}
J#
/** @property */
public boolean get_AssuresOrderedDelivery ()
JScript
public function get AssuresOrderedDelivery () : boolean

Property Value

true if the binding assures ordered delivery; otherwise, false. The default value is false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterBinding.ConnectionUriType Property
[image]

Gets the type of the adapter's specific ConnectionUri.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding
Dim value As Type

value = instance.ConnectionUriType

Syntax

Visual Basic
Public MustOverride ReadOnly Property ConnectionUriType As Type
C#
public abstract Type ConnectionUriType { get; }
C++
public:
virtual property Type^ ConnectionUriType {
    Type^ get () abstract;
}
J#
/** @property */
public abstract Type get_ConnectionUriType ()
JScript
public abstract function get ConnectionUriType () : Type

Property Value

The type of the adapter's specific ConnectionUri.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace
IAdapterBindingCapabilities
ConnectionUri


AdapterBinding.DefaultXsdFileNamePrefix Property
[image]

Gets a value indicating the default XSD file name prefix.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding
Dim value As String

value = instance.DefaultXsdFileNamePrefix

Syntax

Visual Basic
Public Overridable ReadOnly Property DefaultXsdFileNamePrefix As String
C#
public virtual string DefaultXsdFileNamePrefix { get; }
C++
public:
virtual property String^ DefaultXsdFileNamePrefix {
    String^ get ();
}
J#
/** @property */
public String get_DefaultXsdFileNamePrefix ()
JScript
public function get DefaultXsdFileNamePrefix () : String

Property Value

Returns String.

Remarks

The Consume Adapter Service BizTalk Project Add-in design-time tool uses the value defined in this property as the default file name prefix when creating XSD schemas.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterBinding.QueuedDelivery Property
[image]

Gets a value indicating whether the binding can support the queued delivery of messages.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding
Dim value As Boolean

value = instance.QueuedDelivery

Syntax

Visual Basic
Public Overridable ReadOnly Property QueuedDelivery As Boolean
C#
public virtual bool QueuedDelivery { get; }
C++
public:
virtual property bool QueuedDelivery {
    bool get ();
}
J#
/** @property */
public boolean get_QueuedDelivery ()
JScript
public function get QueuedDelivery () : boolean

Property Value

true if the binding supports queued delivery; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterBinding.Scheme Property
[image]

Gets the URI transport scheme for the channels and listeners that are configured with this binding.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding
Dim value As String

value = instance.Scheme

Syntax

Visual Basic
Public MustOverride ReadOnly Property Scheme As String
C#
public abstract string Scheme { get; }
C++
public:
virtual property String^ Scheme {
    String^ get () abstract override;
}
J#
/** @property */
public abstract String get_Scheme ()
JScript
public abstract function get Scheme () : String

Property Value

A string containing the URI transport scheme.

Remarks

It is a best practice for the binding scheme to be same as the scheme of the Adapter object. You can choose any string to represent the URI transport scheme, as long as it doesn't conflict with the schemes of WCF predefined bindings such as BasicHttpBinding, NetTcpBinding, and NetNamedPipeBinding.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterBinding.SupportsMetadataBrowse Property
[image]

Gets a value indicating whether this binding supports metadata browsing.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding
Dim value As Boolean

value = instance.SupportsMetadataBrowse

Syntax

Visual Basic
Public MustOverride ReadOnly Property SupportsMetadataBrowse As Boolean
C#
public abstract bool SupportsMetadataBrowse { get; }
C++
public:
virtual property bool SupportsMetadataBrowse {
    bool get () abstract;
}
J#
/** @property */
public abstract boolean get_SupportsMetadataBrowse ()
JScript
public abstract function get SupportsMetadataBrowse () : boolean

Property Value

true if this binding supports metadata browsing; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataBrowseHandler
IAdapterBindingCapabilities


AdapterBinding.SupportsMetadataGet Property
[image]

Gets a value indicating whether this binding supports metadata retrieval.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding
Dim value As Boolean

value = instance.SupportsMetadataGet

Syntax

Visual Basic
Public MustOverride ReadOnly Property SupportsMetadataGet As Boolean
C#
public abstract bool SupportsMetadataGet { get; }
C++
public:
virtual property bool SupportsMetadataGet {
    bool get () abstract;
}
J#
/** @property */
public abstract boolean get_SupportsMetadataGet ()
JScript
public abstract function get SupportsMetadataGet () : boolean

Property Value

true if this binding supports metadata retrieval; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
IAdapterBindingCapabilities


AdapterBinding.SupportsMetadataSearch Property
[image]

Gets a value indicating whether this binding supports metadata searching.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterBinding
Dim value As Boolean

value = instance.SupportsMetadataSearch

Syntax

Visual Basic
Public MustOverride ReadOnly Property SupportsMetadataSearch As Boolean
C#
public abstract bool SupportsMetadataSearch { get; }
C++
public:
virtual property bool SupportsMetadataSearch {
    bool get () abstract;
}
J#
/** @property */
public abstract boolean get_SupportsMetadataSearch ()
JScript
public abstract function get SupportsMetadataSearch () : boolean

Property Value

true if this binding supports metadata searching; otherwise, false.

Remarks

.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterBinding Class
AdapterBinding Members
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataSearchHandler
IAdapterBindingCapabilities


AdapterEnvironmentSettings Class
See Also Members
[image]

Represents the adapter context. Usually the adapter has a static instance of the adapter context and uses it to initialize the Adapter base class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEnvironmentSettings

Syntax

Visual Basic
Public NotInheritable Class AdapterEnvironmentSettings
C#
public sealed class AdapterEnvironmentSettings
C++
public ref class AdapterEnvironmentSettings sealed
J#
public final class AdapterEnvironmentSettings
JScript
public final class AdapterEnvironmentSettings

Remarks

All users share the same settings for the adapter within the specific application domain. In other words, the settings are “globally scoped” for that application domain and adapter.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.AdapterEnvironmentSettings

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEnvironmentSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings
Adapter


AdapterEnvironmentSettings Members
See Also Constructors Methods Properties
[image]

Represents the adapter context. Usually the adapter has a static instance of the adapter context and uses it to initialize the Adapter base class.

The following tables list the members exposed by the AdapterEnvironmentSettings type.

Public Constructors

Name | Description
AdapterEnvironmentSettings | Initializes a new instance of the AdapterEnvironmentSettings class.
Top

Public Properties

 | Name | Description
public property | CommonCache | Gets the environment settings for the common cache.
public property | ConnectionManager | Gets the environment settings for the connection manager.
public property | PerformanceCounters | Gets the environment settings for the performance counters.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

AdapterEnvironmentSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings
Adapter


AdapterEnvironmentSettings Constructor
[image]

Initializes a new instance of the AdapterEnvironmentSettings class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New AdapterEnvironmentSettings

Syntax

Visual Basic
Public Sub New
C#
public AdapterEnvironmentSettings ()
C++
public:
AdapterEnvironmentSettings ()
J#
public AdapterEnvironmentSettings ()
JScript
public function AdapterEnvironmentSettings ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEnvironmentSettings Class
AdapterEnvironmentSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterEnvironmentSettings Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

AdapterEnvironmentSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings
Adapter


AdapterEnvironmentSettings Properties
[image]

Public Properties

 | Name | Description
public property | CommonCache | Gets the environment settings for the common cache.
public property | ConnectionManager | Gets the environment settings for the connection manager.
public property | PerformanceCounters | Gets the environment settings for the performance counters.

See Also

Reference

AdapterEnvironmentSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings
Adapter


AdapterEnvironmentSettings.CommonCache Property
[image]

Gets the environment settings for the common cache.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEnvironmentSettings
Dim value As CommonCacheSettings

value = instance.CommonCache

Syntax

Visual Basic
Public ReadOnly Property CommonCache As CommonCacheSettings
C#
public CommonCacheSettings CommonCache { get; }
C++
public:
property CommonCacheSettings^ CommonCache {
    CommonCacheSettings^ get ();
}
J#
/** @property */
public CommonCacheSettings get_CommonCache ()
JScript
public function get CommonCache () : CommonCacheSettings

Property Value

The environment settings for the common cache.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEnvironmentSettings Class
AdapterEnvironmentSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
CommonCacheSettings


AdapterEnvironmentSettings.ConnectionManager Property
[image]

Gets the environment settings for the connection manager.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEnvironmentSettings
Dim value As ConnectionManagerSettings

value = instance.ConnectionManager

Syntax

Visual Basic
Public ReadOnly Property ConnectionManager As ConnectionManagerSettings
C#
public ConnectionManagerSettings ConnectionManager { get; }
C++
public:
property ConnectionManagerSettings^ ConnectionManager {
    ConnectionManagerSettings^ get ();
}
J#
/** @property */
public ConnectionManagerSettings get_ConnectionManager ()
JScript
public function get ConnectionManager () : ConnectionManagerSettings

Property Value

Gets the environment settings for the connection manager

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEnvironmentSettings Class
AdapterEnvironmentSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
ConnectionManagerSettings


AdapterEnvironmentSettings.PerformanceCounters Property
[image]

Gets the environment settings for the performance counters.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterEnvironmentSettings
Dim value As PerformanceCountersSettings

value = instance.PerformanceCounters

Syntax

Visual Basic
Public ReadOnly Property PerformanceCounters As PerformanceCountersSettings
C#
public PerformanceCountersSettings PerformanceCounters { get; }
C++
public:
property PerformanceCountersSettings^ PerformanceCounters {
    PerformanceCountersSettings^ get ();
}
J#
/** @property */
public PerformanceCountersSettings get_PerformanceCounters ()
JScript
public function get PerformanceCounters () : PerformanceCountersSettings

Property Value

Gets the environment settings for the performance counters.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterEnvironmentSettings Class
AdapterEnvironmentSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
PerformanceCountersSettings


AdapterException Class
See Also Example Members
[image]

Represents the exception that is thrown when a general adapter error occurs.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class AdapterException
    Inherits CommunicationException
C#
[SerializableAttribute]
public class AdapterException : CommunicationException
C++
[SerializableAttribute]
public ref class AdapterException : public CommunicationException
J#
/** @attribute SerializableAttribute() */
public class AdapterException extends CommunicationException
JScript
SerializableAttribute
public class AdapterException extends CommunicationException

Example

The following code provides an example of when to throw an AdapterException.

C# Copy Code
public class EchoAdapterOutboundHandler : EchoAdapterHandlerBase, IOutboundHandler
{
    /// <summary>
    /// Initializes a new instance of the EchoAdapterOutboundHandler class
    /// </summary>
    public EchoAdapterOutboundHandler(EchoAdapterConnection connection
        , MetadataLookup metadataLookup)
        : base(connection, metadataLookup)
    {
    }
    public Message Execute(Message message, TimeSpan timeout)
    {
        OperationMetadata om = this.MetadataLookup.GetOperationDefinitionFromInputMessageAction(message.Headers.Action, timeout);
        if (om == null)
        {
            throw new AdapterException("Invalid operation " + message.Headers.Action);
        }
  . . .
    }
}

Remarks

This exception is thrown when an adapter built using the WCF LOB Adapter SDK encounters an error that does not have a more narrowly defined exception. The adapter developer can also use this exception class to throw exceptions from the adapter.

The following are the classes that derive from the AdapterException class.

  • ConnectionException

  • ListenerException

  • MetadataException

  • TargetSystemException

  • XmlReaderGenerationException

  • XmlReaderParsingException

  • XmlWriterParsingException

  • XmlWriterGenerationException

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
Microsoft.ServiceModel.Channels.Common.AdapterException
Derived Classes

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

AdapterException Members
Microsoft.ServiceModel.Channels.Common Namespace
CommunicationException


AdapterException Members
See Also Constructors Methods Properties
[image]

Represents the exception that is thrown when a general adapter error occurs.

The following tables list the members exposed by the AdapterException type.

Public Constructors (see also Protected Constructors)

Name | Description
AdapterException | Overloaded. Initializes a new instance of the AdapterException class.
Top

Protected Constructors

Name | Description
AdapterException | Overloaded. Initializes a new instance of the AdapterException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

AdapterException Class
Microsoft.ServiceModel.Channels.Common Namespace
CommunicationException


AdapterException Constructor
[image]

Initializes a new instance of the AdapterException class.

Overload List

Name | Description
AdapterException () | Initializes a new instance of the AdapterException class.
AdapterException (SerializationInfo, StreamingContext) | Initializes a new instance of the AdapterException class with the specified serialization information and context objects.
AdapterException (String) | Initializes a new instance of the AdapterException class with the specified error message.
AdapterException (String, Exception) | Initializes a new instance of the AdapterException class with the specified error message and a reference to the inner Exception.

See Also

Reference

AdapterException Class
AdapterException Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterException Constructor ()
[image]

Initializes a new instance of the AdapterException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New AdapterException

Syntax

Visual Basic
Public Sub New
C#
public AdapterException ()
C++
public:
AdapterException ()
J#
public AdapterException ()
JScript
public function AdapterException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterException Class
AdapterException Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the AdapterException class with the specified serialization information and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New AdapterException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected AdapterException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
AdapterException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected AdapterException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function AdapterException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterException Class
AdapterException Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterException Constructor (String)
[image]

Initializes a new instance of the AdapterException class with the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New AdapterException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public AdapterException (
    string message
)
C++
public:
AdapterException (
    String^ message
)
J#
public AdapterException (
    String message
)
JScript
public function AdapterException (
    message : String
)

Parameters

message

The message that describes the error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterException Class
AdapterException Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterException Constructor (String, Exception)
[image]

Initializes a new instance of the AdapterException class with the specified error message and a reference to the inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New AdapterException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public AdapterException (
    string message,
    Exception inner
)
C++
public:
AdapterException (
    String^ message,
    Exception^ inner
)
J#
public AdapterException (
    String message,
    Exception inner
)
JScript
public function AdapterException (
    message : String,
    inner : Exception
)

Parameters

message

The error message that explains the reason for the exception.

inner

The Exception that is the cause of the current exception, or a null reference if no inner exception is specified.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterException Class
AdapterException Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

AdapterException Class
Microsoft.ServiceModel.Channels.Common Namespace
CommunicationException


AdapterException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

AdapterException Class
Microsoft.ServiceModel.Channels.Common Namespace
CommunicationException


AdapterSettings Class
See Also Example Members
[image]

Represents adapter settings that control different behaviors of an adapter. You can modify these settings in the constructor of the Adapter class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterSettings

Syntax

Visual Basic
Public NotInheritable Class AdapterSettings
C#
public sealed class AdapterSettings
C++
public ref class AdapterSettings sealed
J#
public final class AdapterSettings
JScript
public final class AdapterSettings

Example

The following example shows how to access adapter settings.

C# Copy Code
public class EchoAdapter : Adapter
{
    private static AdapterEnvironmentSettings environmentSettings = new AdapterEnvironmentSettings();

    private int count;
    private string fileSystemWatcherFolder;

    /// <summary>
    /// Initializes a new instance of the EchoAdapter class
    /// </summary>
    public EchoAdapter()
        : base(environmentSettings)
    {
        // adapter settings
        this.Settings.Metadata.GenerateWsdlDocumentation = true;
    }
    . . .
    }
}

Remarks

The settings in this class are “locally scoped” per a pair of user credentials and connection URI.

See Adapter for an example of exposing an adapter setting as a binding property.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.AdapterSettings

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

AdapterSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings
Adapter


AdapterSettings Members
See Also Methods Properties
[image]

Represents adapter settings that control different behaviors of an adapter. You can modify these settings in the constructor of the Adapter class.

The following tables list the members exposed by the AdapterSettings type.

Public Properties

 | Name | Description
public property | Cache | Gets the adapter cache settings.
public property | ConnectionPool | Gets the ConnectionPoolSettings object containing connection pool settings for the adapter.
public property | Messaging | Gets the MessagingSettings object containing adapter message information.
public property | Metadata | Gets the adapter metadata settings.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | SetDefaults | Restores default values for the CacheSettings, ConnectionPoolSettings, MetadataSettings, and MessagingSettings objects
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

AdapterSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings
Adapter


AdapterSettings Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | SetDefaults | Restores default values for the CacheSettings, ConnectionPoolSettings, MetadataSettings, and MessagingSettings objects
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

AdapterSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings
Adapter


AdapterSettings.SetDefaults Method
[image]

Restores default values for the CacheSettings, ConnectionPoolSettings, MetadataSettings, and MessagingSettings objects

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterSettings

instance.SetDefaults

Syntax

Visual Basic
Public Sub SetDefaults
C#
public void SetDefaults ()
C++
public:
void SetDefaults ()
J#
public void SetDefaults ()
JScript
public function SetDefaults ()

Remarks

This method will set default values for CacheSettings, ConnectionPoolSettings, MetadataSettings, and MessagingSettings.

The following tables show those default values.

CacheSettings

Property Name | Default Value
IdleTimeSpan | 1 day
CacheItemsLimit | 1,000 items
EnableCommonCacheUsage | false
VerificationInterval | 1 hour
VerificationTimeout | 30 seconds

ConnectionPoolSettings

Property Name | Default Value
IdleTimeSpan | 15 minutes
IdleVerificationInterval | 30 seconds
IdleVerificationTimeout | 15 seconds
MaxAvailableConnections | 5 (5% of MaxConnectionsPerSystem)
HandlersShareSameConnection | true
DefaultConnectionCloseTimeout | 1 minute
DefaultListenerStopTimeout | 1 minute
EnablePooling | true

MetadataSettings

Property Name | Default Value
DefaultMetadataNamespace | string.Empty
GenerateWsdlDocumentation | true

MessagingSettings

Property Name | Default Value
StampAddressOfInboundMessage | true
SupportsTransactedInbound | false

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterSettings Class
AdapterSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


AdapterSettings Properties
[image]

Public Properties

 | Name | Description
public property | Cache | Gets the adapter cache settings.
public property | ConnectionPool | Gets the ConnectionPoolSettings object containing connection pool settings for the adapter.
public property | Messaging | Gets the MessagingSettings object containing adapter message information.
public property | Metadata | Gets the adapter metadata settings.

See Also

Reference

AdapterSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings
Adapter


AdapterSettings.Cache Property
[image]

Gets the adapter cache settings.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterSettings
Dim value As CacheSettings

value = instance.Cache

Syntax

Visual Basic
Public ReadOnly Property Cache As CacheSettings
C#
public CacheSettings Cache { get; }
C++
public:
property CacheSettings^ Cache {
    CacheSettings^ get ();
}
J#
/** @property */
public CacheSettings get_Cache ()
JScript
public function get Cache () : CacheSettings

Property Value

The CacheSettings object containing adapter cache settings.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterSettings Class
AdapterSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterSettings.ConnectionPool Property
[image]

Gets the ConnectionPoolSettings object containing connection pool settings for the adapter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterSettings
Dim value As ConnectionPoolSettings

value = instance.ConnectionPool

Syntax

Visual Basic
Public ReadOnly Property ConnectionPool As ConnectionPoolSettings
C#
public ConnectionPoolSettings ConnectionPool { get; }
C++
public:
property ConnectionPoolSettings^ ConnectionPool {
    ConnectionPoolSettings^ get ();
}
J#
/** @property */
public ConnectionPoolSettings get_ConnectionPool ()
JScript
public function get ConnectionPool () : ConnectionPoolSettings

Property Value

The ConnectionPoolSettings object containing connection pool settings for the adapter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterSettings Class
AdapterSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterSettings.Messaging Property
[image]

Gets the MessagingSettings object containing adapter message information.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterSettings
Dim value As MessagingSettings

value = instance.Messaging

Syntax

Visual Basic
Public ReadOnly Property Messaging As MessagingSettings
C#
public MessagingSettings Messaging { get; }
C++
public:
property MessagingSettings^ Messaging {
    MessagingSettings^ get ();
}
J#
/** @property */
public MessagingSettings get_Messaging ()
JScript
public function get Messaging () : MessagingSettings

Property Value

The MessagingSettings object containing adapter message information.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterSettings Class
AdapterSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterSettings.Metadata Property
[image]

Gets the adapter metadata settings.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterSettings
Dim value As MetadataSettings

value = instance.Metadata

Syntax

Visual Basic
Public ReadOnly Property Metadata As MetadataSettings
C#
public MetadataSettings Metadata { get; }
C++
public:
property MetadataSettings^ Metadata {
    MetadataSettings^ get ();
}
J#
/** @property */
public MetadataSettings get_Metadata ()
JScript
public function get Metadata () : MetadataSettings

Property Value

Gets the value of a MetadataSettings object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterSettings Class
AdapterSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace Class
See Also Example Members
[image]

Provides a standard way to trace the execution of code and associated trace messages with the source during the lifetime of your adapter. To view the WCF compliant formatted adapter traces, use the Service Trace Viewer Tool. This class cannot be inherited.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace

Syntax

Visual Basic
Public NotInheritable Class AdapterTrace
    Implements IDisposable
C#
public sealed class AdapterTrace : IDisposable
C++
public ref class AdapterTrace sealed : IDisposable
J#
public final class AdapterTrace implements IDisposable
JScript
public final class AdapterTrace implements IDisposable

Example

The following code example shows how you can use the AdapterTrace to trace the adapter.

C# Copy Code
// Use SampleAdapterUtilities.Trace in the code to trace the adapter
public class SampleAdapterUtilities
{
    //
    // Initializes a new instance of  Microsoft.ServiceModel.Channels.Common.AdapterTrace using the specified name for the source
    //
    static AdapterTrace trace = new AdapterTrace("SampleAdapter");

    /// <summary>
    /// Gets the AdapterTrace
    /// </summary>
    public static AdapterTrace Trace
    {
        get
        {
            return trace;
        }
    }
}

The following code example shows how you can use this class to trace throughout the code base.

C# Copy Code
// Trace with “Information” trace level
SampleAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Information, "Open", "Entering open method of SampleAdapterConnection");
// Trace with “Error” trace level
SampleAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Error, "{trace code}", "Invalid operation " + message.Headers.Action);

The following shows how to enable tracing for the adapter, the WCF LOB Adapter SDK, and WCF in a custom .NET application.

Add <diagnostics> in the app.config file of the user application.

Type | Trace Source Name
Adapter | This is the name as defined when constructing AdapterTrace.
WCF LOB Adapter SDK | Microsoft.ServiceModel.Channels
WCF | System.ServiceModel
WCF Message | System.ServiceModel.MessageLogging
Copy Code
<configuration>
  <system.diagnostics>
    <sources>
      <source name="SampleAdapter" switchValue="Verbose, ActivityTracing">
        <listeners>
          <add name="xmlTrace"/>
        </listeners>
      </source>
      <source name="Microsoft.ServiceModel.Channels" switchValue="Verbose, ActivityTracing">
        <listeners>
          <add name="xmlTrace"/>
        </listeners>
      </source>
      <source name="System.ServiceModel" switchValue="Error" propagateActivity="true">
        <listeners>
          <add name="xmlTrace" />
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add initializeData="C:\logs\mylogfile.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="xmlTrace">
        <filter type="" />
      </add>
    </sharedListeners>
    <trace autoflush="true" />
  </system.diagnostics>
</configuration>

The following shows how to enable tracing for the Add Adapter Service Reference Visual Studio Plug-in or the Consume Adapter Service BizTalk Project Add-in.

For the Add Adapter Service Reference Visual Studio Plug-in, add a <system.diagnostics> section in the devenv.exe.config file. The source name is “Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse”.

Copy Code
<configuration>
  <system.diagnostics>
    <sources>
      <source name="Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse" switchValue="Verbose, ActivityTracing">
        <listeners>
          <add name="xmlTrace"/>
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add initializeData="C:\logs\mylogfile.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="xmlTrace">
        <filter type="" />
      </add>
    </sharedListeners>
    <trace autoflush="true" />
  </system.diagnostics>
</configuration>

For the Consume Adapter Service BizTalk Project Add-in, add a <system.diagnostics> section in the btsntsvc.exe.config file, the same section as in the WCF client application.

Remarks

Note
Avoid tracing sensitive message information, such as passwords or other potentially private information, unless you can control access to tracing output. Failing to do so could result in unauthorized viewing of sensitive information.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.AdapterTrace

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace
TraceSource


AdapterTrace Members
See Also Constructors Methods Properties
[image]

Provides a standard way to trace the execution of code and associated trace messages with the source during the lifetime of your adapter. To view the WCF compliant formatted adapter traces, use the Service Trace Viewer Tool. This class cannot be inherited.

The following tables list the members exposed by the AdapterTrace type.

Public Constructors

Name | Description
AdapterTrace | Overloaded.
Top

Public Properties

 | Name | Description
public property | Attributes | Gets the custom switch attributes defined in the application configuration file.
public property | Listeners | Gets the collection of the trace listeners for the trace source.
public property | Name | Gets the name of the trace source.
public property | Switch | Gets or sets the source switch value.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Close | Closes all the trace listeners in the trace listener collection.
public method | Dispose | Releases all the resources associated with the current AdapterTrace object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ShouldTrace |
public method | ToString | (inherited from Object)
public method | Trace | Overloaded. Writes a formatted trace event to the trace listeners.
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

AdapterTrace Class
Microsoft.ServiceModel.Channels.Common Namespace
TraceSource


AdapterTrace Constructor
[image]

Overload List

Name | Description
AdapterTrace (TraceSource) | Initializes a new instance of the AdapterTrace class with the specified TraceSource object.
AdapterTrace (String) | Initializes a new instance of the AdapterTrace class using the specified name for the source.

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace Constructor (TraceSource)
[image]

Initializes a new instance of the AdapterTrace class with the specified TraceSource object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim traceSource As TraceSource

Dim instance As New AdapterTrace(traceSource)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")> _
Public Sub New ( _
    traceSource As TraceSource _
)
C#
[SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public AdapterTrace (
    TraceSource traceSource
)
C++
[SuppressMessageAttribute(L"Microsoft.Security", L"CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public:
AdapterTrace (
    TraceSource^ traceSource
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands") */
public AdapterTrace (
    TraceSource traceSource
)
JScript
SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")
public function AdapterTrace (
    traceSource : TraceSource
)

Parameters

traceSource

The TraceSource to be used to trace the execution of code and associate trace messages with the source.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace Constructor (String)
[image]

Initializes a new instance of the AdapterTrace class using the specified name for the source.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim sourceName As String

Dim instance As New AdapterTrace(sourceName)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")> _
Public Sub New ( _
    sourceName As String _
)
C#
[SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public AdapterTrace (
    string sourceName
)
C++
[SuppressMessageAttribute(L"Microsoft.Security", L"CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public:
AdapterTrace (
    String^ sourceName
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands") */
public AdapterTrace (
    String sourceName
)
JScript
SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")
public function AdapterTrace (
    sourceName : String
)

Parameters

name

Name of the source which requires WCF compliant formatted adapter trace information.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Close | Closes all the trace listeners in the trace listener collection.
public method | Dispose | Releases all the resources associated with the current AdapterTrace object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ShouldTrace |
public method | ToString | (inherited from Object)
public method | Trace | Overloaded. Writes a formatted trace event to the trace listeners.

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

AdapterTrace Class
Microsoft.ServiceModel.Channels.Common Namespace
TraceSource


AdapterTrace.Close Method
[image]

Closes all the trace listeners in the trace listener collection.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace

instance.Close

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")> _
Public Sub Close
C#
[SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public void Close ()
C++
[SuppressMessageAttribute(L"Microsoft.Security", L"CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public:
void Close ()
J#
/** @attribute SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands") */
public void Close ()
JScript
SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")
public function Close ()

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Dispose Method
[image]

Releases all the resources associated with the current AdapterTrace object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace

instance.Dispose

Syntax

Visual Basic
Public Sub Dispose
C#
public void Dispose ()
C++
public:
virtual void Dispose () sealed
J#
public final void Dispose ()
JScript
public final function Dispose ()

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.ShouldTrace Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim traceEventType As TraceEventType
Dim returnValue As Boolean

returnValue = instance.ShouldTrace(traceEventType)

Syntax

Visual Basic
Public Function ShouldTrace ( _
    traceEventType As TraceEventType _
) As Boolean
C#
public bool ShouldTrace (
    TraceEventType traceEventType
)
C++
public:
bool ShouldTrace (
    TraceEventType traceEventType
)
J#
public boolean ShouldTrace (
    TraceEventType traceEventType
)
JScript
public function ShouldTrace (
    traceEventType : TraceEventType
) : boolean

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Trace Method
[image]

Writes a formatted trace event to the trace listeners.

Overload List

Name | Description
AdapterTrace.Trace (TraceEventType, String, String) | Writes a formatted trace event to the trace listeners using the specified TraceEventType object, event code, and description.
AdapterTrace.Trace (TraceEventType, String, String, Object) | Writes a formatted trace event to the trace listeners using the specified TraceEventType object, event code, description, and source.
AdapterTrace.Trace (TraceEventType, String, String, Object, TraceRecord) | Writes a formatted trace event to the trace listeners with the specified TraceEventType object, event code, description, source, and the TraceRecord object.
AdapterTrace.Trace (TraceEventType, String, String, Object, TraceRecord, Exception) | Writes a formatted trace event to the trace listeners with the specified TraceEventType object, event code, description, source, TraceRecord object, and Exception object.
AdapterTrace.Trace (TraceEventType, String, String, Object, Exception) | Writes a formatted trace event to the trace listeners with the specified TraceEventType object, event code, description, source, and Exception object.

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Trace Method (TraceEventType, String, String)
See Also Example
[image]

Writes a formatted trace event to the trace listeners using the specified TraceEventType object, event code, and description.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim type As TraceEventType
Dim eventCode As String
Dim description As String

instance.Trace(type, eventCode, description)

Syntax

Visual Basic
Public Sub Trace ( _
    type As TraceEventType, _
    eventCode As String, _
    description As String _
)
C#
public void Trace (
    TraceEventType type,
    string eventCode,
    string description
)
C++
public:
void Trace (
    TraceEventType type,
    String^ eventCode,
    String^ description
)
J#
public void Trace (
    TraceEventType type,
    String eventCode,
    String description
)
JScript
public function Trace (
    type : TraceEventType,
    eventCode : String,
    description : String
)

Parameters

type

The specified TraceEventType that describes the severity of the trace.

eventCode

URI that is the unique ID of the trace. It could be the return code or exception type.

description

A brief description of the trace event.

Example

C# Copy Code
EchoAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Error,"http://schemas.mycompany.com/myadapter/StartListenerException", "No operation actions were received for listener to do specific processing.");

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Trace Method (TraceEventType, String, String, Object)
[image]

Writes a formatted trace event to the trace listeners using the specified TraceEventType object, event code, description, and source.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim type As TraceEventType
Dim eventCode As String
Dim description As String
Dim source As Object

instance.Trace(type, eventCode, description, source)

Syntax

Visual Basic
Public Sub Trace ( _
    type As TraceEventType, _
    eventCode As String, _
    description As String, _
    source As Object _
)
C#
public void Trace (
    TraceEventType type,
    string eventCode,
    string description,
    Object source
)
C++
public:
void Trace (
    TraceEventType type,
    String^ eventCode,
    String^ description,
    Object^ source
)
J#
public void Trace (
    TraceEventType type,
    String eventCode,
    String description,
    Object source
)
JScript
public function Trace (
    type : TraceEventType,
    eventCode : String,
    description : String,
    source : Object
)

Parameters

type

The severity of the trace.

eventCode

The unique ID of the trace. It could be a URI, a return code, or an exception type.

description

A brief description of the trace event.

source

The object instance doing the trace; if it is a static, pass the type instead.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Trace Method (TraceEventType, String, String, Object, TraceRecord)
[image]

Writes a formatted trace event to the trace listeners with the specified TraceEventType object, event code, description, source, and the TraceRecord object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim type As TraceEventType
Dim eventCode As String
Dim description As String
Dim source As Object
Dim extendedData As TraceRecord

instance.Trace(type, eventCode, description, source, extendedData)

Syntax

Visual Basic
Public Sub Trace ( _
    type As TraceEventType, _
    eventCode As String, _
    description As String, _
    source As Object, _
    extendedData As TraceRecord _
)
C#
public void Trace (
    TraceEventType type,
    string eventCode,
    string description,
    Object source,
    TraceRecord extendedData
)
C++
public:
void Trace (
    TraceEventType type,
    String^ eventCode,
    String^ description,
    Object^ source,
    TraceRecord^ extendedData
)
J#
public void Trace (
    TraceEventType type,
    String eventCode,
    String description,
    Object source,
    TraceRecord extendedData
)
JScript
public function Trace (
    type : TraceEventType,
    eventCode : String,
    description : String,
    source : Object,
    extendedData : TraceRecord
)

Parameters

type

The specified TraceEventType object that describes the severity of the trace.

eventCode

The unique ID of the trace

description

A brief description of the trace event.

source

The object instance doing the trace; if it is a static, pass the type instead.

extendedData

Extended information about the trace specified in a TraceRecord object. If there is no extended data, pass null.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Trace Method (TraceEventType, String, String, Object, TraceRecord, Exception)
[image]

Writes a formatted trace event to the trace listeners with the specified TraceEventType object, event code, description, source, TraceRecord object, and Exception object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim type As TraceEventType
Dim eventCode As String
Dim description As String
Dim source As Object
Dim extendedData As TraceRecord
Dim exception As Exception

instance.Trace(type, eventCode, description, source, extendedData, exception)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes")> _
Public Sub Trace ( _
    type As TraceEventType, _
    eventCode As String, _
    description As String, _
    source As Object, _
    extendedData As TraceRecord, _
    exception As Exception _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes")]
public void Trace (
    TraceEventType type,
    string eventCode,
    string description,
    Object source,
    TraceRecord extendedData,
    Exception exception
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1031:DoNotCatchGeneralExceptionTypes")]
public:
void Trace (
    TraceEventType type,
    String^ eventCode,
    String^ description,
    Object^ source,
    TraceRecord^ extendedData,
    Exception^ exception
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes") */
public void Trace (
    TraceEventType type,
    String eventCode,
    String description,
    Object source,
    TraceRecord extendedData,
    Exception exception
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes")
public function Trace (
    type : TraceEventType,
    eventCode : String,
    description : String,
    source : Object,
    extendedData : TraceRecord,
    exception : Exception
)

Parameters

type

The specified TraceEventType object that describes the severity of the trace.

eventCode

The unique ID of the trace. It could be a URI, a return code, or an exception type.

description

A brief description of the trace event.

source

The object instance performing the trace; if it is a static, pass the type instead.

extendedData

Extended information for the trace specified in TraceRecord object. If there is no extended data, pass null.

exception

The Exception object to include in the trace.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Trace Method (TraceEventType, String, String, Object, Exception)
[image]

Writes a formatted trace event to the trace listeners with the specified TraceEventType object, event code, description, source, and Exception object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim type As TraceEventType
Dim eventCode As String
Dim description As String
Dim source As Object
Dim exception As Exception

instance.Trace(type, eventCode, description, source, exception)

Syntax

Visual Basic
Public Sub Trace ( _
    type As TraceEventType, _
    eventCode As String, _
    description As String, _
    source As Object, _
    exception As Exception _
)
C#
public void Trace (
    TraceEventType type,
    string eventCode,
    string description,
    Object source,
    Exception exception
)
C++
public:
void Trace (
    TraceEventType type,
    String^ eventCode,
    String^ description,
    Object^ source,
    Exception^ exception
)
J#
public void Trace (
    TraceEventType type,
    String eventCode,
    String description,
    Object source,
    Exception exception
)
JScript
public function Trace (
    type : TraceEventType,
    eventCode : String,
    description : String,
    source : Object,
    exception : Exception
)

Parameters

type

The specified TraceEventType object that describes the severity of the trace.

eventCode

The unique ID of the trace. It could be a URI, a return code, or an exception type.

description

A brief description of the trace event.

source

The object instance performing the trace; if it is a static object, pass the type instead.

exception

An Exception object to include in the trace.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace Properties
[image]

Public Properties

 | Name | Description
public property | Attributes | Gets the custom switch attributes defined in the application configuration file.
public property | Listeners | Gets the collection of the trace listeners for the trace source.
public property | Name | Gets the name of the trace source.
public property | Switch | Gets or sets the source switch value.

See Also

Reference

AdapterTrace Class
Microsoft.ServiceModel.Channels.Common Namespace
TraceSource


AdapterTrace.Attributes Property
[image]

Gets the custom switch attributes defined in the application configuration file.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim value As StringDictionary

value = instance.Attributes

Syntax

Visual Basic
Public ReadOnly Property Attributes As StringDictionary
C#
public StringDictionary Attributes { get; }
C++
public:
property StringDictionary^ Attributes {
    StringDictionary^ get ();
}
J#
/** @property */
public StringDictionary get_Attributes ()
JScript
public function get Attributes () : StringDictionary

Property Value

The StringDictionary object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Listeners Property
[image]

Gets the collection of the trace listeners for the trace source.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim value As TraceListenerCollection

value = instance.Listeners

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")> _
Public ReadOnly Property Listeners As TraceListenerCollection
C#
[SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public TraceListenerCollection Listeners { get; }
C++
[SuppressMessageAttribute(L"Microsoft.Security", L"CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public:
property TraceListenerCollection^ Listeners {
    TraceListenerCollection^ get ();
}
J#
/** @property */
public TraceListenerCollection get_Listeners ()
JScript
public function get Listeners () : TraceListenerCollection

Property Value

A TraceListenerCollection object containing the current listeners for the trace source.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Name Property
See Also Example
[image]

Gets the name of the trace source.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim value As String

value = instance.Name

Syntax

Visual Basic
Public ReadOnly Property Name As String
C#
public string Name { get; }
C++
public:
property String^ Name {
    String^ get ();
}
J#
/** @property */
public String get_Name ()
JScript
public function get Name () : String

Property Value

A string representing the name of the trace source.

Example

The following example shows how to define the name of the trace source.

Copy Code
<configuration>
  <system.diagnostics>
    <sources>
      <source name="Microsoft{Name}"/>
    </sources>
  </system.diagnostics>
</configuration>

Remarks

This name is used by the client applications to enable tracing.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


AdapterTrace.Switch Property
[image]

Gets or sets the source switch value.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As AdapterTrace
Dim value As SourceSwitch

value = instance.Switch

instance.Switch = value

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")> _
Public Property Switch As SourceSwitch
C#
[SuppressMessageAttribute("Microsoft.Security", "CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public SourceSwitch Switch { get; set; }
C++
[SuppressMessageAttribute(L"Microsoft.Security", L"CA2122:DoNotIndirectlyExposeMethodsWithLinkDemands")]
public:
property SourceSwitch^ Switch {
    SourceSwitch^ get ();
    void set (SourceSwitch^ value);
}
J#
/** @property */
public SourceSwitch get_Switch ()

/** @property */
public void set_Switch (SourceSwitch value)
JScript
public function get Switch () : SourceSwitch

public function set Switch (value : SourceSwitch)

Property Value

A SourceSwitch object representing the trace switch value.

Remarks

To configure a SourceSwitch, edit the configuration file that corresponds to the name of the application that consumes the adapter. Within this file, you can set a switch's value or clear all the switches previously set by the application.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterTrace Class
AdapterTrace Members
Microsoft.ServiceModel.Channels.Common Namespace


BasicTypeMetadata Class
See Also Example Members
[image]

Represents a basic data type with XmlSchemaSimpleTypeContent. It allows additional restriction, union, and list constructs to be applied to a simple type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BasicTypeMetadata

Syntax

Visual Basic
Public Class BasicTypeMetadata
    Inherits TypeMetadata
C#
public class BasicTypeMetadata : TypeMetadata
C++
public ref class BasicTypeMetadata : public TypeMetadata
J#
public class BasicTypeMetadata extends TypeMetadata
JScript
public class BasicTypeMetadata extends TypeMetadata

Example

Suppose you want to define a custom simple type called LotteryNumber with the following XML schema format. The type LotteryNumber is used within another complex type called SampleComplexObject.

Copy Code
      <complexType name="SampleComplexObject">
        <sequence>
          <element minOccurs="1" maxOccurs="1" name="uniqueID" type="string" />
           <element minOccurs="1" maxOccurs="1" name="lotteryNumber" type="ns4:LotteryNumber" />
        </sequence>
      </complexType>
      <simpleType name="LotteryNumber">
        <restriction base="int">
          <minInclusive value="1" />
          <maxInclusive value="99" />
        </restriction>
      </simpleType>
      <element name="LotteryNumber" type="ns4:LotteryNumber" />

The following code example from the IMetadataResolverHandler implementation shows how the previous output can be accomplished by using BasicTypeMetadata.

C# Copy Code
public TypeMetadata ResolveTypeMetadata(string typeId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    switch (typeId)
    {
        case "/Types/LotteryNumber":
            BasicTypeMetadata lotteryTM = new BasicTypeMetadata(typeId, "LotteryNumber");
            lotteryTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE + "/types";

            // <xs:restriction base="xs:int">
            XmlSchemaSimpleTypeRestriction lotteryNumberRestriction = new XmlSchemaSimpleTypeRestriction();
            lotteryNumberRestriction.BaseTypeName = new XmlQualifiedName("int", "http://www.w3.org/2001/XMLSchema");

            // <xs:minInclusive value="1"/>
            XmlSchemaMinInclusiveFacet minInclusive = new XmlSchemaMinInclusiveFacet();
            minInclusive.Value = "1";
            lotteryNumberRestriction.Facets.Add(minInclusive);

            // <xs:maxInclusive value="99"/>
            XmlSchemaMaxInclusiveFacet maxInclusive = new XmlSchemaMaxInclusiveFacet();
            maxInclusive.Value = "99";
            lotteryNumberRestriction.Facets.Add(maxInclusive);

            lotteryTM.Content = lotteryNumberRestriction;
            return lotteryTM;

    }
}

Remarks

This class is used within IMetadataResolverHandler. This type can be specified for the following classes:

  • OperationParameter

  • OperationResult

  • TypeMember

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Microsoft.ServiceModel.Channels.Common.BasicTypeMetadata
Microsoft.ServiceModel.Channels.Common.EnumTypeMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

BasicTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
EnumTypeMetadata
IMetadataResolverHandler


BasicTypeMetadata Members
See Also Constructors Methods Properties
[image]

Represents a basic data type with XmlSchemaSimpleTypeContent. It allows additional restriction, union, and list constructs to be applied to a simple type.

The following tables list the members exposed by the BasicTypeMetadata type.

Public Constructors

Name | Description
BasicTypeMetadata | Overloaded. Initializes a new instance of the BasicTypeMetadata class.
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a value indicating whether a default value can be set for that type. This method is overridden from TypeMetadata.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Content | Gets or sets the XmlSchemaSimpleTypeContent of the current BasicTypeMetadata object.
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

BasicTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
EnumTypeMetadata
IMetadataResolverHandler


BasicTypeMetadata Constructor
[image]

Initializes a new instance of the BasicTypeMetadata class.

Overload List

Name | Description
BasicTypeMetadata (String, String) | Initializes a new instance of the BasicTypeMetadata class using the specified type ID and type name.
BasicTypeMetadata (String, String, DateTime, Boolean) | Initializes a new instance of the BasicTypeMetadata class using the specified type ID, type name, metadata time stamp, and expiration flag.

See Also

Reference

BasicTypeMetadata Class
BasicTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


BasicTypeMetadata Constructor (String, String)
[image]

Initializes a new instance of the BasicTypeMetadata class using the specified type ID and type name.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeId As String
Dim typeName As String

Dim instance As New BasicTypeMetadata(typeId, typeName)

Syntax

Visual Basic
Public Sub New ( _
    typeId As String, _
    typeName As String _
)
C#
public BasicTypeMetadata (
    string typeId,
    string typeName
)
C++
public:
BasicTypeMetadata (
    String^ typeId,
    String^ typeName
)
J#
public BasicTypeMetadata (
    String typeId,
    String typeName
)
JScript
public function BasicTypeMetadata (
    typeId : String,
    typeName : String
)

Parameters

typeId

The unique type ID for that type.

typeName

The name of the type.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BasicTypeMetadata Class
BasicTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


BasicTypeMetadata Constructor (String, String, DateTime, Boolean)
[image]

Initializes a new instance of the BasicTypeMetadata class using the specified type ID, type name, metadata time stamp, and expiration flag.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeId As String
Dim typeName As String
Dim metadataTimestamp As DateTime
Dim neverExpires As Boolean

Dim instance As New BasicTypeMetadata(typeId, typeName, metadataTimestamp, neverExpires)

Syntax

Visual Basic
Public Sub New ( _
    typeId As String, _
    typeName As String, _
    metadataTimestamp As DateTime, _
    neverExpires As Boolean _
)
C#
public BasicTypeMetadata (
    string typeId,
    string typeName,
    DateTime metadataTimestamp,
    bool neverExpires
)
C++
public:
BasicTypeMetadata (
    String^ typeId,
    String^ typeName,
    DateTime metadataTimestamp,
    bool neverExpires
)
J#
public BasicTypeMetadata (
    String typeId,
    String typeName,
    DateTime metadataTimestamp,
    boolean neverExpires
)
JScript
public function BasicTypeMetadata (
    typeId : String,
    typeName : String,
    metadataTimestamp : DateTime,
    neverExpires : boolean
)

Parameters

typeId

The unique type ID for that instance of the type.

typeName

The name of the type.

metadataTimestamp

The DateTime object of the type's metadata.

neverExpires

A flag that indicates whether the metadata for the type will expire.

true if metadata never expires from the cache; otherwise, false.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BasicTypeMetadata Class
BasicTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


BasicTypeMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

BasicTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
EnumTypeMetadata
IMetadataResolverHandler


BasicTypeMetadata.ExportXmlSchema Method
[image]

Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BasicTypeMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Overrides Sub ExportXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public override void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
virtual void ExportXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public override function ExportXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the type uses to export its schema and namespaces prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

timeout

The time-out of the operation.

Remarks

This method is responsible for generating XmlSchema types and elements corresponding to this type metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BasicTypeMetadata Class
BasicTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


BasicTypeMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a value indicating whether a default value can be set for that type. This method is overridden from TypeMetadata.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Content | Gets or sets the XmlSchemaSimpleTypeContent of the current BasicTypeMetadata object.
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)

See Also

Reference

BasicTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
EnumTypeMetadata
IMetadataResolverHandler


BasicTypeMetadata.CanSetDefaultValue Property
[image]

Gets a value indicating whether a default value can be set for that type. This method is overridden from TypeMetadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BasicTypeMetadata
Dim value As Boolean

value = instance.CanSetDefaultValue

Syntax

Visual Basic
Public Overrides ReadOnly Property CanSetDefaultValue As Boolean
C#
public override bool CanSetDefaultValue { get; }
C++
public:
virtual property bool CanSetDefaultValue {
    bool get () override;
}
J#
/** @property */
public boolean get_CanSetDefaultValue ()
JScript
public override function get CanSetDefaultValue () : boolean

Property Value

true always.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BasicTypeMetadata Class
BasicTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


BasicTypeMetadata.Content Property
See Also Example
[image]

Gets or sets the XmlSchemaSimpleTypeContent of the current BasicTypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BasicTypeMetadata
Dim value As XmlSchemaSimpleTypeContent

value = instance.Content

instance.Content = value

Syntax

Visual Basic
Public Property Content As XmlSchemaSimpleTypeContent
C#
public XmlSchemaSimpleTypeContent Content { get; set; }
C++
public:
property XmlSchemaSimpleTypeContent^ Content {
    XmlSchemaSimpleTypeContent^ get ();
    void set (XmlSchemaSimpleTypeContent^ value);
}
J#
/** @property */
public XmlSchemaSimpleTypeContent get_Content ()

/** @property */
public void set_Content (XmlSchemaSimpleTypeContent value)
JScript
public function get Content () : XmlSchemaSimpleTypeContent

public function set Content (value : XmlSchemaSimpleTypeContent)

Property Value

AnXmlSchemaSimpleTypeContent object that contains type content.

Example

C# Copy Code
BasicTypeMetadata lotteryTM = new BasicTypeMetadata(typeId, "LotteryNumber");
lotteryTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE + "/types";

// <xs:restriction base="xs:int">
XmlSchemaSimpleTypeRestriction lotteryNumberRestriction = new XmlSchemaSimpleTypeRestriction();
lotteryNumberRestriction.BaseTypeName = new XmlQualifiedName("int", "http://www.w3.org/2001/XMLSchema");

// <xs:minInclusive value="1"/>
XmlSchemaMinInclusiveFacet minInclusive = new XmlSchemaMinInclusiveFacet();
minInclusive.Value = "1";
lotteryNumberRestriction.Facets.Add(minInclusive);

// <xs:maxInclusive value="99"/>
XmlSchemaMaxInclusiveFacet maxInclusive = new XmlSchemaMaxInclusiveFacet();
maxInclusive.Value = "99";
lotteryNumberRestriction.Facets.Add(maxInclusive);

lotteryTM.Content = lotteryNumberRestriction;

Remarks

For more examples of using XmlSchemaSimpleTypeContent, see XmlSchemaSimpleType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

BasicTypeMetadata Class
BasicTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings Class
See Also Members
[image]

Encapsulates the settings that control the adapter metadata cache.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CacheSettings

Syntax

Visual Basic
Public NotInheritable Class CacheSettings
C#
public sealed class CacheSettings
C++
public ref class CacheSettings sealed
J#
public final class CacheSettings
JScript
public final class CacheSettings

Remarks

The metadata cache enables the adapter to use the metadata already defined in the cache rather than having to resolve it from the line-of-business system. The settings in this class impact the metadata caching behavior.

Note
The WCF LOB Adapter SDK supports in-memory cache only.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.CacheSettings

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

CacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings Members
See Also Methods Properties
[image]

Encapsulates the settings that control the adapter metadata cache.

The following tables list the members exposed by the CacheSettings type.

Public Properties

 | Name | Description
public property | CacheItemsLimit | Gets or sets the size of the cache in terms of the number of items it caches.
public property | EnableCommonCacheUsage | Gets or sets a value that indicates whether to enable the common cache usage. The common cache will be used to cache those metadata items that have the common cache flag. These cache items will be available for all channel factories and all users within the application domain, regardless of the channel factory that initiated the first metadata resolution of the item.
public property | IdleTimeSpan | Gets or sets the idle time span after which a cache entry will be removed from the cache if it was not used.
public property | VerificationInterval | Gets or sets the time span of how often to verify that the cache entries are valid.
public property | VerificationTimeout | Gets or sets the time-out for the process of verifying the validity of the cache entries.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | Clones the CacheSettings.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

CacheSettings Class
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | Clones the CacheSettings.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

CacheSettings Class
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings.Clone Method
[image]

Clones the CacheSettings.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CacheSettings
Dim returnValue As CacheSettings

returnValue = instance.Clone

Syntax

Visual Basic
Public Function Clone As CacheSettings
C#
public CacheSettings Clone ()
C++
public:
CacheSettings^ Clone ()
J#
public CacheSettings Clone ()
JScript
public function Clone () : CacheSettings

Return Value

A cloned CacheSettings class.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CacheSettings Class
CacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings Properties
[image]

Public Properties

 | Name | Description
public property | CacheItemsLimit | Gets or sets the size of the cache in terms of the number of items it caches.
public property | EnableCommonCacheUsage | Gets or sets a value that indicates whether to enable the common cache usage. The common cache will be used to cache those metadata items that have the common cache flag. These cache items will be available for all channel factories and all users within the application domain, regardless of the channel factory that initiated the first metadata resolution of the item.
public property | IdleTimeSpan | Gets or sets the idle time span after which a cache entry will be removed from the cache if it was not used.
public property | VerificationInterval | Gets or sets the time span of how often to verify that the cache entries are valid.
public property | VerificationTimeout | Gets or sets the time-out for the process of verifying the validity of the cache entries.

See Also

Reference

CacheSettings Class
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings.CacheItemsLimit Property
[image]

Gets or sets the size of the cache in terms of the number of items it caches.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CacheSettings
Dim value As Integer

value = instance.CacheItemsLimit

instance.CacheItemsLimit = value

Syntax

Visual Basic
Public Property CacheItemsLimit As Integer
C#
public int CacheItemsLimit { get; set; }
C++
public:
property int CacheItemsLimit {
    int get ();
    void set (int value);
}
J#
/** @property */
public int get_CacheItemsLimit ()

/** @property */
public void set_CacheItemsLimit (int value)
JScript
public function get CacheItemsLimit () : int

public function set CacheItemsLimit (value : int)

Property Value

The maximum number of items allowed in the cache or -1 for unlimited. The default value is 1,000.

Remarks

If the target line-of-business system does not provide explicit guidance on the interval of metadata refresh, you should test different values and select the one that best balances the needs of your adapter.

Note
The adapter cache size is not a memory size limit but an items count limit.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

CacheSettings Class
CacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings.EnableCommonCacheUsage Property
[image]

Gets or sets a value that indicates whether to enable the common cache usage. The common cache will be used to cache those metadata items that have the common cache flag. These cache items will be available for all channel factories and all users within the application domain, regardless of the channel factory that initiated the first metadata resolution of the item.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CacheSettings
Dim value As Boolean

value = instance.EnableCommonCacheUsage

instance.EnableCommonCacheUsage = value

Syntax

Visual Basic
Public Property EnableCommonCacheUsage As Boolean
C#
public bool EnableCommonCacheUsage { get; set; }
C++
public:
property bool EnableCommonCacheUsage {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_EnableCommonCacheUsage ()

/** @property */
public void set_EnableCommonCacheUsage (boolean value)
JScript
public function get EnableCommonCacheUsage () : boolean

public function set EnableCommonCacheUsage (value : boolean)

Property Value

true common cache usage is not enabled; otherwise, false. The default value is false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CacheSettings Class
CacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings.IdleTimeSpan Property
[image]

Gets or sets the idle time span after which a cache entry will be removed from the cache if it was not used.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CacheSettings
Dim value As TimeSpan

value = instance.IdleTimeSpan

instance.IdleTimeSpan = value

Syntax

Visual Basic
Public Property IdleTimeSpan As TimeSpan
C#
public TimeSpan IdleTimeSpan { get; set; }
C++
public:
property TimeSpan IdleTimeSpan {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_IdleTimeSpan ()

/** @property */
public void set_IdleTimeSpan (TimeSpan value)
JScript
public function get IdleTimeSpan () : TimeSpan

public function set IdleTimeSpan (value : TimeSpan)

Property Value

A TimeSpan value representing the idle time span length. The default value is one day.

Remarks

If the target line-of-business system does not provide explicit guidance on the interval of metadata refresh, you should test different values and select the one that best balances the needs of your adapter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CacheSettings Class
CacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings.VerificationInterval Property
[image]

Gets or sets the time span of how often to verify that the cache entries are valid.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CacheSettings
Dim value As TimeSpan

value = instance.VerificationInterval

instance.VerificationInterval = value

Syntax

Visual Basic
Public Property VerificationInterval As TimeSpan
C#
public TimeSpan VerificationInterval { get; set; }
C++
public:
property TimeSpan VerificationInterval {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_VerificationInterval ()

/** @property */
public void set_VerificationInterval (TimeSpan value)
JScript
public function get VerificationInterval () : TimeSpan

public function set VerificationInterval (value : TimeSpan)

Property Value

A TimeSpan value representing the verification interval length. The default value is one hour.

Remarks

If the target line-of-business system does not provide explicit guidance on the interval of metadata refresh, you should test different values and select the one that best balances the needs of your adapter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CacheSettings Class
CacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CacheSettings.VerificationTimeout Property
[image]

Gets or sets the time-out for the process of verifying the validity of the cache entries.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CacheSettings
Dim value As TimeSpan

value = instance.VerificationTimeout

instance.VerificationTimeout = value

Syntax

Visual Basic
Public Property VerificationTimeout As TimeSpan
C#
public TimeSpan VerificationTimeout { get; set; }
C++
public:
property TimeSpan VerificationTimeout {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_VerificationTimeout ()

/** @property */
public void set_VerificationTimeout (TimeSpan value)
JScript
public function get VerificationTimeout () : TimeSpan

public function set VerificationTimeout (value : TimeSpan)

Property Value

A TimeSpan value representing the time-out for the process of verifying the validity of the cache entries. The default value is 30 seconds.

Remarks

If the target line-of-business system does not provide explicit guidance on the interval of metadata refresh, you should test different values and select the one that best balances the needs of your adapter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CacheSettings Class
CacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CharTypeMetadata Class
See Also Example Members
[image]

Represents a specific character type for serialization.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CharTypeMetadata

Syntax

Visual Basic
Public Class CharTypeMetadata
    Inherits TypeMetadata
C#
public class CharTypeMetadata : TypeMetadata
C++
public ref class CharTypeMetadata : public TypeMetadata
J#
public class CharTypeMetadata extends TypeMetadata
JScript
public class CharTypeMetadata extends TypeMetadata

Example

The following code example shows how to use this type metadata. For the complete code example, see IMetadataResolverHandler.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here

    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata("/Sample/UpdateData", "UpdateData");
    // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    // Syntax: bool UpdateData(string uniqueID, string duration, char[] data)
    opMetadata.DisplayName = "UpdateData";
    // Create parameters
    OperationParameter parmUniqueID = new OperationParameter("uniqueID", OperationParameterDirection.In, QualifiedType.GuidType, false);
    OperationParameter parmDuration = new OperationParameter("duration", OperationParameterDirection.In, QualifiedType.DurationType, false);
    OperationParameter parmData = new OperationParameter("data", OperationParameterDirection.In, QualifiedType.CharType, true);
    opMetadata.Parameters.Add(parmUniqueID);
    opMetadata.Parameters.Add(parmDuration);
    opMetadata.Parameters.Add(parmData);
    // Create result
    opMetadata.OperationResult = new OperationResult(QualifiedType.BooleanType, false);
    return opMetadata;
}

The following code example shows how to generate WSDL from this operation.

C# Copy Code
class Program
{
    static void Main(string[] args)
    {
        // create the binding
        SampleAdapterBinding binding = new SampleAdapterBinding();
        // create the endpoint address
        EndpointAddress address = new EndpointAddress("sample://host:100/DB2OLEDB/MyDB?Protocol=TCPIP&Driver=Test");
        // create metadata retrieval client
        MetadataRetrievalClient metadataProxy = new MetadataRetrievalClient(binding, address);
        // Show the nodes on the console
        MetadataRetrievalNode op1 = new MetadataRetrievalNode();
        op1.NodeId = "/Sample/UpdateData";
        op1.IsOperation = true;
        List<MetadataRetrievalNode> nodes = new List<MetadataRetrievalNode>();
        nodes.Add(op1);
        // Get the WSDL
        ServiceDescription wsdl = metadataProxy.GetMetadata(nodes.ToArray());
        // Write the WSDL to a file
        wsdl.Write(@"c:\temp\sample.wsdl");
        // close the client
        metadataProxy.Close();
    }
}

The following section shows the generated XML schema types and elements within the <types> section of the WSDL document.

Copy Code
    <schema xmlns:array="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:ns3="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0" xmlns="http://www.w3.org/2001/XMLSchema">
      <import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
      <import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
      <element name="UpdateData">
        <complexType>
          <sequence>
            <element minOccurs="1" maxOccurs="1" name="uniqueID" type="ns3:guid" />
            <element minOccurs="1" maxOccurs="1" name="duration" type="ns3:duration" />
            <element minOccurs="1" maxOccurs="1" name="data" nillable="true" type="array:ArrayOfchar" />
          </sequence>
        </complexType>
      </element>
      <element name="UpdateDataResponse">
        <complexType>
          <sequence>
            <element minOccurs="1" maxOccurs="1" name="UpdateDataResult" type="boolean" />
          </sequence>
        </complexType>
      </element>
    </schema>
    <schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns="http://www.w3.org/2001/XMLSchema">
      <xs:simpleType name="char">
        <xs:restriction base="xs:int" />
      </xs:simpleType>
      <xs:element name="duration" nillable="true" type="tns:duration" />
      <xs:simpleType name="duration">
        <xs:restriction base="xs:duration">
          <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
          <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
          <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
        </xs:restriction>
      </xs:simpleType>
      <xs:element name="guid" nillable="true" type="tns:guid" />
      <xs:simpleType name="guid">
        <xs:restriction base="xs:string">
          <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
        </xs:restriction>
      </xs:simpleType>
    </schema>

    <schema xmlns:array="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:ns3="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" version="1.0" xmlns="http://www.w3.org/2001/XMLSchema">
      <import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
      <complexType name="ArrayOfchar">
        <sequence>
          <element minOccurs="1" maxOccurs="unbounded" name="char" type="ns3:char" />
        </sequence>
      </complexType>
      <element name="ArrayOfchar" nillable="true" type="array:ArrayOfchar" />
    </schema>

Remarks

This class is not a standard World Wide Web Consortium (W3C) XML schema type. Instead, it belongs to the namespace http://schemas.microsoft.com/2003/10/Serialization/. It is used within the IMetadataResolverHandler interface. It can also be specified for the following classes when resolving metadata:

  • OperationParameter

  • OperationResult

  • TypeMember

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Microsoft.ServiceModel.Channels.Common.CharTypeMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

CharTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
DurationTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


CharTypeMetadata Members
See Also Constructors Fields Methods Properties
[image]

Represents a specific character type for serialization.

The following tables list the members exposed by the CharTypeMetadata type.

Public Constructors

Name | Description
CharTypeMetadata | Initializes a new instance of the CharTypeMetadata class.
Top

Public Fields

Name | Description
TypeId | Represents the unique TypeId of the current CharTypeMetadata object.
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a Boolean value that indicates if a default value can be set for the current CharTypeMetadata object.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

CharTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
DurationTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


CharTypeMetadata Fields
[image]

Public Fields

Name | Description
TypeId | Represents the unique TypeId of the current CharTypeMetadata object.

See Also

Reference

CharTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
DurationTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


CharTypeMetadata.TypeId Field
[image]

Represents the unique TypeId of the current CharTypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As String

value = CharTypeMetadata.TypeId

Syntax

Visual Basic
Public Const TypeId As String
C#
public const string TypeId
C++
public:
literal String^ TypeId
J#
public static final String TypeId
JScript
public const var TypeId : String

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CharTypeMetadata Class
CharTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


CharTypeMetadata Constructor
[image]

Initializes a new instance of the CharTypeMetadata class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New CharTypeMetadata

Syntax

Visual Basic
Public Sub New
C#
public CharTypeMetadata ()
C++
public:
CharTypeMetadata ()
J#
public CharTypeMetadata ()
JScript
public function CharTypeMetadata ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CharTypeMetadata Class
CharTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


CharTypeMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

CharTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
DurationTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


CharTypeMetadata.ExportXmlSchema Method
[image]

Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CharTypeMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Overrides Sub ExportXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public override void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
virtual void ExportXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public override function ExportXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the type uses to export its schema and namespace's prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

timespan

The time-out of the operation.

Remarks

This method is responsible for generating XmlSchema serialization types and elements corresponding to the current CharTypeMetadata object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CharTypeMetadata Class
CharTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


CharTypeMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a Boolean value that indicates if a default value can be set for the current CharTypeMetadata object.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)

See Also

Reference

CharTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
DurationTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


CharTypeMetadata.CanSetDefaultValue Property
[image]

Gets a Boolean value that indicates if a default value can be set for the current CharTypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CharTypeMetadata
Dim value As Boolean

value = instance.CanSetDefaultValue

Syntax

Visual Basic
Public Overrides ReadOnly Property CanSetDefaultValue As Boolean
C#
public override bool CanSetDefaultValue { get; }
C++
public:
virtual property bool CanSetDefaultValue {
    bool get () override;
}
J#
/** @property */
public boolean get_CanSetDefaultValue ()
JScript
public override function get CanSetDefaultValue () : boolean

Property Value

true if the default value can be set; otherwise, false.

Remarks

The default value can be set for the char type metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CharTypeMetadata Class
CharTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


CommonCacheSettings Class
See Also Members
[image]

Represents the common cache settings.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CommonCacheSettings

Syntax

Visual Basic
Public NotInheritable Class CommonCacheSettings
C#
public sealed class CommonCacheSettings
C++
public ref class CommonCacheSettings sealed
J#
public final class CommonCacheSettings
JScript
public final class CommonCacheSettings

Remarks

This class is used in the AdapterEnvironmentSettings.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.CommonCacheSettings

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CommonCacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings


CommonCacheSettings Members
See Also Methods Properties
[image]

Represents the common cache settings.

The following tables list the members exposed by the CommonCacheSettings type.

Public Properties

 | Name | Description
public property | CacheItemsLimit | Gets or sets the size of the cache in terms of the number of metadata items it caches.
public property | IdleTimeSpan | Gets or sets the idle time span after which a cache entry will be removed from the cache if it is not used.
public property | VerificationInterval | Gets or sets the interval that specifies how often to verify the validity of the cache entries.
public property | VerificationTimeout | Gets or sets the time-out duration for the process of verifying the validity of the cache entries. The default value is 30 seconds.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

CommonCacheSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings


CommonCacheSettings Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

CommonCacheSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings


CommonCacheSettings Properties
[image]

Public Properties

 | Name | Description
public property | CacheItemsLimit | Gets or sets the size of the cache in terms of the number of metadata items it caches.
public property | IdleTimeSpan | Gets or sets the idle time span after which a cache entry will be removed from the cache if it is not used.
public property | VerificationInterval | Gets or sets the interval that specifies how often to verify the validity of the cache entries.
public property | VerificationTimeout | Gets or sets the time-out duration for the process of verifying the validity of the cache entries. The default value is 30 seconds.

See Also

Reference

CommonCacheSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings


CommonCacheSettings.CacheItemsLimit Property
[image]

Gets or sets the size of the cache in terms of the number of metadata items it caches.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CommonCacheSettings
Dim value As Integer

value = instance.CacheItemsLimit

instance.CacheItemsLimit = value

Syntax

Visual Basic
Public Property CacheItemsLimit As Integer
C#
public int CacheItemsLimit { get; set; }
C++
public:
property int CacheItemsLimit {
    int get ();
    void set (int value);
}
J#
/** @property */
public int get_CacheItemsLimit ()

/** @property */
public void set_CacheItemsLimit (int value)
JScript
public function get CacheItemsLimit () : int

public function set CacheItemsLimit (value : int)

Property Value

The number of metadata items cached.

Remarks

The cache size referred to here is not a memory size limit but an items count limit. The default value is 1,000.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CommonCacheSettings Class
CommonCacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CommonCacheSettings.IdleTimeSpan Property
[image]

Gets or sets the idle time span after which a cache entry will be removed from the cache if it is not used.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CommonCacheSettings
Dim value As TimeSpan

value = instance.IdleTimeSpan

instance.IdleTimeSpan = value

Syntax

Visual Basic
Public Property IdleTimeSpan As TimeSpan
C#
public TimeSpan IdleTimeSpan { get; set; }
C++
public:
property TimeSpan IdleTimeSpan {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_IdleTimeSpan ()

/** @property */
public void set_IdleTimeSpan (TimeSpan value)
JScript
public function get IdleTimeSpan () : TimeSpan

public function set IdleTimeSpan (value : TimeSpan)

Property Value

A TimeSpan object that represents the idle time span after which a cache entry will be removed from the cache if it is not used.

Remarks

The default value is one day.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CommonCacheSettings Class
CommonCacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CommonCacheSettings.VerificationInterval Property
[image]

Gets or sets the interval that specifies how often to verify the validity of the cache entries.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CommonCacheSettings
Dim value As TimeSpan

value = instance.VerificationInterval

instance.VerificationInterval = value

Syntax

Visual Basic
Public Property VerificationInterval As TimeSpan
C#
public TimeSpan VerificationInterval { get; set; }
C++
public:
property TimeSpan VerificationInterval {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_VerificationInterval ()

/** @property */
public void set_VerificationInterval (TimeSpan value)
JScript
public function get VerificationInterval () : TimeSpan

public function set VerificationInterval (value : TimeSpan)

Property Value

A TimeSpan object that represents how often to verify the validity of the cache entries.

Remarks

The default value is one hour.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CommonCacheSettings Class
CommonCacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


CommonCacheSettings.VerificationTimeout Property
[image]

Gets or sets the time-out duration for the process of verifying the validity of the cache entries. The default value is 30 seconds.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CommonCacheSettings
Dim value As TimeSpan

value = instance.VerificationTimeout

instance.VerificationTimeout = value

Syntax

Visual Basic
Public Property VerificationTimeout As TimeSpan
C#
public TimeSpan VerificationTimeout { get; set; }
C++
public:
property TimeSpan VerificationTimeout {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_VerificationTimeout ()

/** @property */
public void set_VerificationTimeout (TimeSpan value)
JScript
public function get VerificationTimeout () : TimeSpan

public function set VerificationTimeout (value : TimeSpan)

Property Value

A TimeSpan object that represents the time-out duration for the process of verifying the validity of the cache entries.

Remarks

The default value is 30 seconds.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CommonCacheSettings Class
CommonCacheSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ComplexQualifiedType Class
See Also Example Members
[image]

Represents an adapter-specific complex qualified type. This class defines the adapter-specific complex type equivalent of the World Wide Web Consortium (W3C) XML schema complex type definition.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ComplexQualifiedType

Syntax

Visual Basic
Public Class ComplexQualifiedType
    Inherits QualifiedType
C#
public class ComplexQualifiedType : QualifiedType
C++
public ref class ComplexQualifiedType : public QualifiedType
J#
public class ComplexQualifiedType extends QualifiedType
JScript
public class ComplexQualifiedType extends QualifiedType

Example

The following code example shows how to use this class to resolve operation and type metadata.

C# Copy Code
public OperationMetadata Resolve(string operationId, TimeSpan timeout)
{
    if (!"/Echo/EchoGreeting".Equals(operationId))
    {
        throw new AdapterException("Unable to understand operation identifier " + operationId);
    }
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "EchoGreeting");
    // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    // Syntax: Greeting[] EchoGreeting(Greeting greeting)
    opMetadata.DisplayName = "EchoGreeting";
    // Create parameters
    ComplexQualifiedType greetingCQT = new ComplexQualifiedType("/Types/Greeting");
    OperationParameter parmGreeting = new OperationParameter("greeting", OperationParameterDirection.In, greetingCQT, false);
    opMetadata.Parameters.Add(parmGreeting);
    // Create result
    opMetadata.OperationResult = new OperationResult(greetingCQT, true);

    // Instead of resolving the type in ResolveTypeMetadata(), resolve it here
    extraTypeMetadataResolved = new TypeMetadataCollection();
    // Greeting type
    StructuredTypeMetadata greetingTM = new StructuredTypeMetadata("/Types/Greeting", "Greeting");
    ComplexQualifiedType nameCQT = new ComplexQualifiedType("/Types/Name");
    TypeMember memberName = new TypeMember("name", nameCQT, false);
    greetingTM.Members.Add(memberName);
    greetingTM.CanUseCommonCache = true;
    // Name type
    StructuredTypeMetadata nameTM = new StructuredTypeMetadata("/Types/Name", "Name");
    nameTM.Members.Add(new TypeMember("firstName", QualifiedType.StringType, false));
    nameTM.Members.Add(new TypeMember("lastName", QualifiedType.StringType, false));
    nameTM.CanUseCommonCache = true;
    // Add Greeting and Name typemetadata in the collection
    extraTypeMetadataResolved.Add(greetingTM);
    extraTypeMetadataResolved.Add(nameTM);

    return opMetadata;
}

For more examples on how to use the ComplexQualifiedType class, see the example sections of the ResolveTypeMetadata and ResolveOperationMetadata.

Remarks

It is used within the IMetadataResolverHandler implementation to specify a complex type definition for an operation parameter, operation result, and a type member.

This class is a key member of the following classes:

  • OperationParameter

  • OperationResult

  • TypeMember

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.QualifiedType
Microsoft.ServiceModel.Channels.Common.ComplexQualifiedType

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ComplexQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace
QualifiedType
SimpleQualifiedType
IMetadataResolverHandler
TypeMember
OperationParameter
OperationResult


ComplexQualifiedType Members
See Also Constructors Methods Properties
[image]

Represents an adapter-specific complex qualified type. This class defines the adapter-specific complex type equivalent of the World Wide Web Consortium (W3C) XML schema complex type definition.

The following tables list the members exposed by the ComplexQualifiedType type.

Public Constructors

Name | Description
ComplexQualifiedType | Initializes a new instance of the ComplexQualifiedType class using the specified typeId.
Top

Public Properties

 | Name | Description
public property | Description | Gets or sets the description of the current ComplexQualifiedType object
public property | TypeId | Gets the UniqueId property of the TypeMetadata class that this complex type encloses.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

ComplexQualifiedType Class
Microsoft.ServiceModel.Channels.Common Namespace
QualifiedType
SimpleQualifiedType
IMetadataResolverHandler
TypeMember
OperationParameter
OperationResult


ComplexQualifiedType Constructor
[image]

Initializes a new instance of the ComplexQualifiedType class using the specified typeId.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeId As String

Dim instance As New ComplexQualifiedType(typeId)

Syntax

Visual Basic
Public Sub New ( _
    typeId As String _
)
C#
public ComplexQualifiedType (
    string typeId
)
C++
public:
ComplexQualifiedType (
    String^ typeId
)
J#
public ComplexQualifiedType (
    String typeId
)
JScript
public function ComplexQualifiedType (
    typeId : String
)

Parameters

typeId

The UniqueId

that this complex type encloses.

Remarks

The specified typeId contains the value of the UniqueId property of the TypeMetadata class.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ComplexQualifiedType Class
ComplexQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


ComplexQualifiedType Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

ComplexQualifiedType Class
Microsoft.ServiceModel.Channels.Common Namespace
QualifiedType
SimpleQualifiedType
IMetadataResolverHandler
TypeMember
OperationParameter
OperationResult


ComplexQualifiedType.GenerateXmlSchemaAnnotation Method
[image]

Generates the XmlSchemaAnnotation for the ComplexQualifiedType.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim returnValue As XmlSchemaAnnotation

returnValue = Me.GenerateXmlSchemaAnnotation

Syntax

Visual Basic
Protected Friend Overridable Function GenerateXmlSchemaAnnotation As XmlSchemaAnnotation
C#
protected internal virtual XmlSchemaAnnotation GenerateXmlSchemaAnnotation ()
C++
protected public:
virtual XmlSchemaAnnotation^ GenerateXmlSchemaAnnotation ()
J#
protected XmlSchemaAnnotation GenerateXmlSchemaAnnotation ()
JScript
protected internal function GenerateXmlSchemaAnnotation () : XmlSchemaAnnotation

Return Value

An XmlSchemaAnnotation object.

Remarks

Note
The standard WSDL builder does not generate the XML schema annotation for the ComplexQualifiedType type for current version.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ComplexQualifiedType Class
ComplexQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


ComplexQualifiedType Properties
[image]

Public Properties

 | Name | Description
public property | Description | Gets or sets the description of the current ComplexQualifiedType object
public property | TypeId | Gets the UniqueId property of the TypeMetadata class that this complex type encloses.

See Also

Reference

ComplexQualifiedType Class
Microsoft.ServiceModel.Channels.Common Namespace
QualifiedType
SimpleQualifiedType
IMetadataResolverHandler
TypeMember
OperationParameter
OperationResult


ComplexQualifiedType.Description Property
[image]

Gets or sets the description of the current ComplexQualifiedType object

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ComplexQualifiedType
Dim value As String

value = instance.Description

instance.Description = value

Syntax

Visual Basic
Public Property Description As String
C#
public string Description { get; set; }
C++
public:
property String^ Description {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_Description ()

/** @property */
public void set_Description (String value)
JScript
public function get Description () : String

public function set Description (value : String)

Property Value

A string representing the description of the current ComplexQualifiedType object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ComplexQualifiedType Class
ComplexQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


ComplexQualifiedType.TypeId Property
[image]

Gets the UniqueId property of the TypeMetadata class that this complex type encloses.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ComplexQualifiedType
Dim value As String

value = instance.TypeId

Syntax

Visual Basic
Public ReadOnly Property TypeId As String
C#
public string TypeId { get; }
C++
public:
property String^ TypeId {
    String^ get ();
}
J#
/** @property */
public String get_TypeId ()
JScript
public function get TypeId () : String

Property Value

The UniqueId of the TypeMetadata class that this complex type encloses.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ComplexQualifiedType Class
ComplexQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionException Class
See Also Members
[image]

Represents the ConnectionException that is thrown when a connection-specific error occurs.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class ConnectionException
    Inherits AdapterException
C#
[SerializableAttribute]
public class ConnectionException : AdapterException
C++
[SerializableAttribute]
public ref class ConnectionException : public AdapterException
J#
/** @attribute SerializableAttribute() */
public class ConnectionException extends AdapterException
JScript
SerializableAttribute
public class ConnectionException extends AdapterException

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
Microsoft.ServiceModel.Channels.Common.AdapterException
Microsoft.ServiceModel.Channels.Common.ConnectionException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionException Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


ConnectionException Members
See Also Constructors Methods Properties
[image]

Represents the ConnectionException that is thrown when a connection-specific error occurs.

The following tables list the members exposed by the ConnectionException type.

Public Constructors (see also Protected Constructors)

Name | Description
ConnectionException | Overloaded. Initializes a new instance of the ConnectionException class.
Top

Protected Constructors

Name | Description
ConnectionException | Overloaded. Initializes a new instance of the ConnectionException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

ConnectionException Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


ConnectionException Constructor
[image]

Initializes a new instance of the ConnectionException class.

Overload List

Name | Description
ConnectionException () | Initializes a new instance of the ConnectionException class.
ConnectionException (SerializationInfo, StreamingContext) | Initializes a new instance of the ConnectionException class by using the specified serialization information and context objects.
ConnectionException (String) | Initializes a new instance of the ConnectionException class by using the specified error message.
ConnectionException (String, Exception) | Initializes a new instance of the ConnectionException class by using the specified error message and the reference to the inner Exception that is the cause of this Exception.

See Also

Reference

ConnectionException Class
ConnectionException Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionException Constructor ()
[image]

Initializes a new instance of the ConnectionException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New ConnectionException

Syntax

Visual Basic
Public Sub New
C#
public ConnectionException ()
C++
public:
ConnectionException ()
J#
public ConnectionException ()
JScript
public function ConnectionException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionException Class
ConnectionException Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the ConnectionException class by using the specified serialization information and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New ConnectionException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected ConnectionException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
ConnectionException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected ConnectionException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function ConnectionException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionException Class
ConnectionException Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionException Constructor (String)
[image]

Initializes a new instance of the ConnectionException class by using the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New ConnectionException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public ConnectionException (
    string message
)
C++
public:
ConnectionException (
    String^ message
)
J#
public ConnectionException (
    String message
)
JScript
public function ConnectionException (
    message : String
)

Parameters

message

The message that describes the error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionException Class
ConnectionException Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionException Constructor (String, Exception)
[image]

Initializes a new instance of the ConnectionException class by using the specified error message and the reference to the inner Exception that is the cause of this Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New ConnectionException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public ConnectionException (
    string message,
    Exception inner
)
C++
public:
ConnectionException (
    String^ message,
    Exception^ inner
)
J#
public ConnectionException (
    String message,
    Exception inner
)
JScript
public function ConnectionException (
    message : String,
    inner : Exception
)

Parameters

message

The message that describes the error.

inner

The inner Exception reference.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionException Class
ConnectionException Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

ConnectionException Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


ConnectionException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

ConnectionException Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


ConnectionManagerSettings Class
See Also Members
[image]

Represents the connection manager settings. This class cannot be inherited.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionManagerSettings

Syntax

Visual Basic
Public NotInheritable Class ConnectionManagerSettings
C#
public sealed class ConnectionManagerSettings
C++
public ref class ConnectionManagerSettings sealed
J#
public final class ConnectionManagerSettings
JScript
public final class ConnectionManagerSettings

Remarks

This class is used in AdapterEnvironmentSettings.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.ConnectionManagerSettings

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionManagerSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings


ConnectionManagerSettings Members
See Also Methods Properties
[image]

Represents the connection manager settings. This class cannot be inherited.

The following tables list the members exposed by the ConnectionManagerSettings type.

Public Properties

 | Name | Description
public property | MaxConnectionsPerSystem | Gets or sets the maximum number of connections that can be created for a given system (connection URI). The default value is 100, and it can't be negative.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

ConnectionManagerSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings


ConnectionManagerSettings Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

ConnectionManagerSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings


ConnectionManagerSettings Properties
[image]

Public Properties

 | Name | Description
public property | MaxConnectionsPerSystem | Gets or sets the maximum number of connections that can be created for a given system (connection URI). The default value is 100, and it can't be negative.

See Also

Reference

ConnectionManagerSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterEnvironmentSettings


ConnectionManagerSettings.MaxConnectionsPerSystem Property
[image]

Gets or sets the maximum number of connections that can be created for a given system (connection URI). The default value is 100, and it can't be negative.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionManagerSettings
Dim value As Integer

value = instance.MaxConnectionsPerSystem

instance.MaxConnectionsPerSystem = value

Syntax

Visual Basic
Public Property MaxConnectionsPerSystem As Integer
C#
public int MaxConnectionsPerSystem { get; set; }
C++
public:
property int MaxConnectionsPerSystem {
    int get ();
    void set (int value);
}
J#
/** @property */
public int get_MaxConnectionsPerSystem ()

/** @property */
public void set_MaxConnectionsPerSystem (int value)
JScript
public function get MaxConnectionsPerSystem () : int

public function set MaxConnectionsPerSystem (value : int)

Property Value

The maximum number of connections that can be created for a given system.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionManagerSettings Class
ConnectionManagerSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionPoolSettings Class
See Also Members
[image]

Represents the settings that control the connection pool. This class cannot be inherited.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings

Syntax

Visual Basic
Public NotInheritable Class ConnectionPoolSettings
C#
public sealed class ConnectionPoolSettings
C++
public ref class ConnectionPoolSettings sealed
J#
public final class ConnectionPoolSettings
JScript
public final class ConnectionPoolSettings

Remarks

This class is used in AdapterSettings.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.ConnectionPoolSettings

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


ConnectionPoolSettings Members
See Also Methods Properties
[image]

Represents the settings that control the connection pool. This class cannot be inherited.

The following tables list the members exposed by the ConnectionPoolSettings type.

Public Properties

 | Name | Description
public property | DefaultConnectionCloseTimeout | Gets or sets the default time-out that is used when closing a connection. The default value is one minute.
public property | DefaultListenerStopTimeout | Gets or sets the default time-out that is used when stopping a listener. The default value is one minute.
public property | EnablePooling | Gets or sets a value that indicates whether pooling should be enabled (reusing connections).
public property | HandlersShareSameConnection | Gets or sets a value indicating whether different types of handlers should be created from the same connection.
public property | IdleTimeSpan | Gets or sets the time span after which a connection in the pool will close if it is still idle. The default value is 15 minutes.
public property | IdleVerificationInterval | Gets or sets an interval that indicates how often you should check for the idle connections. The default value is 30 seconds.
public property | IdleVerificationTimeout | Gets or sets the time-out for the process of checking for an idle connection and cleaning it. The default value is 15 seconds.
public property | MaxAvailableConnections | Gets or sets the maximum number of available and ready connections that are staying in the pool; extra ones will be closed. The default value is five connections.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | Creates a deep copy of the current ConnectionPoolSettings object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

ConnectionPoolSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


ConnectionPoolSettings Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | Creates a deep copy of the current ConnectionPoolSettings object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

ConnectionPoolSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


ConnectionPoolSettings.Clone Method
[image]

Creates a deep copy of the current ConnectionPoolSettings object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings
Dim returnValue As ConnectionPoolSettings

returnValue = instance.Clone

Syntax

Visual Basic
Public Function Clone As ConnectionPoolSettings
C#
public ConnectionPoolSettings Clone ()
C++
public:
ConnectionPoolSettings^ Clone ()
J#
public ConnectionPoolSettings Clone ()
JScript
public function Clone () : ConnectionPoolSettings

Return Value

A cloned ConnectionPoolSettings object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionPoolSettings Class
ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionPoolSettings Properties
[image]

Public Properties

 | Name | Description
public property | DefaultConnectionCloseTimeout | Gets or sets the default time-out that is used when closing a connection. The default value is one minute.
public property | DefaultListenerStopTimeout | Gets or sets the default time-out that is used when stopping a listener. The default value is one minute.
public property | EnablePooling | Gets or sets a value that indicates whether pooling should be enabled (reusing connections).
public property | HandlersShareSameConnection | Gets or sets a value indicating whether different types of handlers should be created from the same connection.
public property | IdleTimeSpan | Gets or sets the time span after which a connection in the pool will close if it is still idle. The default value is 15 minutes.
public property | IdleVerificationInterval | Gets or sets an interval that indicates how often you should check for the idle connections. The default value is 30 seconds.
public property | IdleVerificationTimeout | Gets or sets the time-out for the process of checking for an idle connection and cleaning it. The default value is 15 seconds.
public property | MaxAvailableConnections | Gets or sets the maximum number of available and ready connections that are staying in the pool; extra ones will be closed. The default value is five connections.

See Also

Reference

ConnectionPoolSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


ConnectionPoolSettings.DefaultConnectionCloseTimeout Property
[image]

Gets or sets the default time-out that is used when closing a connection. The default value is one minute.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings
Dim value As TimeSpan

value = instance.DefaultConnectionCloseTimeout

instance.DefaultConnectionCloseTimeout = value

Syntax

Visual Basic
Public Property DefaultConnectionCloseTimeout As TimeSpan
C#
public TimeSpan DefaultConnectionCloseTimeout { get; set; }
C++
public:
property TimeSpan DefaultConnectionCloseTimeout {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_DefaultConnectionCloseTimeout ()

/** @property */
public void set_DefaultConnectionCloseTimeout (TimeSpan value)
JScript
public function get DefaultConnectionCloseTimeout () : TimeSpan

public function set DefaultConnectionCloseTimeout (value : TimeSpan)

Property Value

A TimeSpan representing the default time-out that is used when closing a connection.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionPoolSettings Class
ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionPoolSettings.DefaultListenerStopTimeout Property
[image]

Gets or sets the default time-out that is used when stopping a listener. The default value is one minute.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings
Dim value As TimeSpan

value = instance.DefaultListenerStopTimeout

instance.DefaultListenerStopTimeout = value

Syntax

Visual Basic
Public Property DefaultListenerStopTimeout As TimeSpan
C#
public TimeSpan DefaultListenerStopTimeout { get; set; }
C++
public:
property TimeSpan DefaultListenerStopTimeout {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_DefaultListenerStopTimeout ()

/** @property */
public void set_DefaultListenerStopTimeout (TimeSpan value)
JScript
public function get DefaultListenerStopTimeout () : TimeSpan

public function set DefaultListenerStopTimeout (value : TimeSpan)

Property Value

A TimeSpan representing the length of time that can elapse before the default listener stops time-out.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionPoolSettings Class
ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionPoolSettings.EnablePooling Property
[image]

Gets or sets a value that indicates whether pooling should be enabled (reusing connections).

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings
Dim value As Boolean

value = instance.EnablePooling

instance.EnablePooling = value

Syntax

Visual Basic
Public Property EnablePooling As Boolean
C#
public bool EnablePooling { get; set; }
C++
public:
property bool EnablePooling {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_EnablePooling ()

/** @property */
public void set_EnablePooling (boolean value)
JScript
public function get EnablePooling () : boolean

public function set EnablePooling (value : boolean)

Property Value

true if pooling is enabled; otherwise, false. The default value is true.

Remarks

By keeping alive a set of active connections for each given connection configuration, connection pooling reduces the number of times that new connections need to be opened. Whenever a connection is requested, the connection pool manager looks to see if there is an available connection in the pool. If a pooled connection is available, the connection pool manager uses it instead of opening a new connection. Instead of actually closing the closed connections, they are returned to the pooled set of active connections.

Note
Disabling pooling can affect the performance and scalability of your adapter. We therefore recommend that you do so with caution.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ConnectionPoolSettings Class
ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionPoolSettings.HandlersShareSameConnection Property
[image]

Gets or sets a value indicating whether different types of handlers should be created from the same connection.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings
Dim value As Boolean

value = instance.HandlersShareSameConnection

instance.HandlersShareSameConnection = value

Syntax

Visual Basic
Public Property HandlersShareSameConnection As Boolean
C#
public bool HandlersShareSameConnection { get; set; }
C++
public:
property bool HandlersShareSameConnection {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_HandlersShareSameConnection ()

/** @property */
public void set_HandlersShareSameConnection (boolean value)
JScript
public function get HandlersShareSameConnection () : boolean

public function set HandlersShareSameConnection (value : boolean)

Property Value

true if handlers can share the same connection; otherwise, false. The default value is true.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionPoolSettings Class
ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionPoolSettings.IdleTimeSpan Property
[image]

Gets or sets the time span after which a connection in the pool will close if it is still idle. The default value is 15 minutes.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings
Dim value As TimeSpan

value = instance.IdleTimeSpan

instance.IdleTimeSpan = value

Syntax

Visual Basic
Public Property IdleTimeSpan As TimeSpan
C#
public TimeSpan IdleTimeSpan { get; set; }
C++
public:
property TimeSpan IdleTimeSpan {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_IdleTimeSpan ()

/** @property */
public void set_IdleTimeSpan (TimeSpan value)
JScript
public function get IdleTimeSpan () : TimeSpan

public function set IdleTimeSpan (value : TimeSpan)

Property Value

A TimeSpan representing the length of time a connection remains idle before it closes.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionPoolSettings Class
ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionPoolSettings.IdleVerificationInterval Property
[image]

Gets or sets an interval that indicates how often you should check for the idle connections. The default value is 30 seconds.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings
Dim value As TimeSpan

value = instance.IdleVerificationInterval

instance.IdleVerificationInterval = value

Syntax

Visual Basic
Public Property IdleVerificationInterval As TimeSpan
C#
public TimeSpan IdleVerificationInterval { get; set; }
C++
public:
property TimeSpan IdleVerificationInterval {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_IdleVerificationInterval ()

/** @property */
public void set_IdleVerificationInterval (TimeSpan value)
JScript
public function get IdleVerificationInterval () : TimeSpan

public function set IdleVerificationInterval (value : TimeSpan)

Property Value

A TimeSpan representing how often you should check for the idle connections.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionPoolSettings Class
ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionPoolSettings.IdleVerificationTimeout Property
[image]

Gets or sets the time-out for the process of checking for an idle connection and cleaning it. The default value is 15 seconds.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings
Dim value As TimeSpan

value = instance.IdleVerificationTimeout

instance.IdleVerificationTimeout = value

Syntax

Visual Basic
Public Property IdleVerificationTimeout As TimeSpan
C#
public TimeSpan IdleVerificationTimeout { get; set; }
C++
public:
property TimeSpan IdleVerificationTimeout {
    TimeSpan get ();
    void set (TimeSpan value);
}
J#
/** @property */
public TimeSpan get_IdleVerificationTimeout ()

/** @property */
public void set_IdleVerificationTimeout (TimeSpan value)
JScript
public function get IdleVerificationTimeout () : TimeSpan

public function set IdleVerificationTimeout (value : TimeSpan)

Property Value

A TimeSpan representing the length of time for verifying and cleaning an idle connection.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionPoolSettings Class
ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionPoolSettings.MaxAvailableConnections Property
[image]

Gets or sets the maximum number of available and ready connections that are staying in the pool; extra ones will be closed. The default value is five connections.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionPoolSettings
Dim value As Integer

value = instance.MaxAvailableConnections

instance.MaxAvailableConnections = value

Syntax

Visual Basic
Public Property MaxAvailableConnections As Integer
C#
public int MaxAvailableConnections { get; set; }
C++
public:
property int MaxAvailableConnections {
    int get ();
    void set (int value);
}
J#
/** @property */
public int get_MaxAvailableConnections ()

/** @property */
public void set_MaxAvailableConnections (int value)
JScript
public function get MaxAvailableConnections () : int

public function set MaxAvailableConnections (value : int)

Property Value

The maximum number of available and ready connections that are staying in the pool.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionPoolSettings Class
ConnectionPoolSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri Class
See Also Example Members
[image]

Represents a connection string to a target system. It can be only used as a base class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri

Syntax

Visual Basic
Public MustInherit Class ConnectionUri
    Implements ICustomTypeDescriptor
C#
public abstract class ConnectionUri : ICustomTypeDescriptor
C++
public ref class ConnectionUri abstract : ICustomTypeDescriptor
J#
public abstract class ConnectionUri implements ICustomTypeDescriptor
JScript
public abstract class ConnectionUri implements ICustomTypeDescriptor

Example

The following code example provides an implementation of the ConnectionUri class according to the previous remarks.

C# Copy Code
#region Using Directives
using System;
using Microsoft.ServiceModel.Channels.Common;
using System.ComponentModel;
using System.Text;
#endregion

namespace My.Samples.CodeSnippets
{
    /// <summary>
    /// This is the class for building the SampleAdapterConnectionUri
    /// </summary>
    public class SampleAdapterConnectionUri : ConnectionUri
    {

        #region Custom Generated Fields

        private string provider = null;
        private string database = null;
        private string driver = null;
        private string hostname = null;
        private int port = 10000;
        private string protocol = null;

        #endregion Custom Generated Fields

        private UriBuilder uriBuilder;

        #region Constructors

        /// <summary>
        /// Initializes a new instance of the ConnectionUri class
        /// </summary>
        public SampleAdapterConnectionUri()
        {
        }

        /// <summary>
        /// Initializes a new instance of the ConnectionUri class with a Uri object
        /// </summary>
        public SampleAdapterConnectionUri(Uri uri)
            : base()
        {
            uriBuilder = new UriBuilder();
            uriBuilder.Scheme = SampleAdapter.SCHEME;
            ParseUri(uri);
        }

        #endregion Constructors

        #region Custom Generated Properties

        [Browsable(true)]
        [DisplayName("Port")]
        [Category("Connection Properties")]
        public int Port
        {
            get
            {
                return this.port;
            }
            set
            {
                this.port = value;
            }

        }

        [Browsable(true)]
        [DisplayName("Protocol")]
        [Category("Connection Properties")]
        public string Protocol
        {
            get
            {
                return this.protocol;
            }
            set
            {
                this.protocol = value;
            }
        }

        [Browsable(true)]
        [DisplayName("Provider")]
        [Category("Connection Properties")]
        public string Provider
        {
            get
            {
                return this.provider;
            }
            set
            {
                this.provider = value;
            }
        }

        [Browsable(true)]
        [DisplayName("Host Name")]
        [Category("Connection Properties")]
        public string Hostname
        {
            get
            {
                return this.hostname;
            }
            set
            {
                this.hostname = value;
            }
        }

        [Browsable(true)]
        [DisplayName("Database")]
        [Category("Connection Properties")]
        public string Database
        {
            get
            {
                return this.database;
            }
            set
            {
                this.database = value;
            }
        }

        [Browsable(true)]
        [DisplayName("Driver")]
        [Category("Connection Properties")]
        public string Driver
        {
            get
            {
                return this.driver;
            }
            set
            {
                this.driver = value;
            }
        }

        #endregion Custom Generated Properties

        /// <summary>
        /// This method is called by Uri property getter.
        /// </summary>
        /// <returns></returns>
        private Uri BuildUri()
        {
            // validate
            if (    String.IsNullOrEmpty(Hostname) ||
                    String.IsNullOrEmpty(Provider) ||
                    String.IsNullOrEmpty(Database) ||
                    String.IsNullOrEmpty(Protocol) ||
                    String.IsNullOrEmpty(Driver)   ||
                    Port == 0 )
            {
                throw new InvalidUriException("Fields are missing. Cannot construct a valid URI until all the required fields have value.");
            }

            // build
            uriBuilder.Scheme = SampleAdapter.SCHEME;
            uriBuilder.Host = Hostname;
            uriBuilder.Port = Port;
            uriBuilder.Path = "/" + Provider + "/" + Database;
            uriBuilder.Query = "Protocol=" + Protocol + "&Driver=" + Driver;
            return uriBuilder.Uri;
        }

        /// <summary>
        /// This method is called by Uri property setter.
        /// </summary>
        /// <param name="uri"></param>
        private void ParseUri(Uri uri)
        {
            // Validate - expecting URI to have all the valid values
            String[] protocolValues = ConnectionUri.GetQueryStringValue(uri, "Protocol");
            String[] driverValues = ConnectionUri.GetQueryStringValue(uri, "Driver");
            if (protocolValues == null ||
                driverValues == null ||
                uri.Segments == null ||
                uri.Segments.Length < 3 ||
                uri.Port == -1 ||
                String.IsNullOrEmpty(uri.Host))
            {
                throw new InvalidUriException("You have specified an invalid URI. Enter the URI in expected format of this adapter.");
            }

            // Parse
            Hostname = uri.Host;
            Port = uri.Port;
            Protocol = protocolValues[0];
            Driver = driverValues[0];
            string[] pathSegments = uri.Segments;
            Provider = pathSegments[1];
            if (Provider.Contains("/"))
            {
                // remove it
                Provider.Remove(Provider.LastIndexOf('/')-1, 1);
            }

            Database = pathSegments[2];
        }

        #region ConnectionUri Members

        /// <summary>
        /// Gets/Sets the Uri
        /// </summary>
        public override Uri Uri
        {
            // Build the URI
            get
            {
                if (uriBuilder == null)
                {
                    // Set initial state of this URI
                    // e.g. sample:/
                    uriBuilder = new UriBuilder();
                    uriBuilder.Scheme = SampleAdapter.SCHEME;
                    uriBuilder.Host = "";
                    return uriBuilder.Uri;
                }
                else
                {
                    return BuildUri();
                }
            }
            // Parse the URI
            set
            {
                string emptyURI = SampleAdapter.SCHEME + ":/";
                // If the Value is equal to its initial state i.e. empty
                // no need to parse, else parse the URI into its individual
                // connection properties.
                if (!emptyURI.Equals(value.ToString()))
                    ParseUri(value);
            }
        }

        /// <summary>
        /// Returns the sample Uri string that is displayed  as an example in the Add Adapter Service Reference UI.        /// </summary>
        public override string SampleUriString
        {
            get
            {
                return "sample://{Hostname}:{Port}/{Provider}/{Database}?Protocol={Protocol}&Driver={Driver}";
            }
        }

        #endregion ConnectionUri Members

    }
}

After the ConnectionURI class is defined, a helper class/method can then generate the target system-specific connection string as shown in the following IConnectionFactory implementation.

C# Copy Code
#region Using Directives
using System;
using System.Collections.Generic;
using System.Text;
using System.IdentityModel.Selectors;
using System.ServiceModel.Description;
using Microsoft.ServiceModel.Channels.Common;
#endregion

namespace My.Samples.CodeSnippets
{
    public class SampleAdapterConnectionFactory : IConnectionFactory
    {
        #region Private Fields

        // Stores the client credentials
        private ClientCredentials clientCredentials;
        // Stores the adapter class
        private SampleAdapter adapter;
        // Connection URI
        private SampleAdapterConnectionUri conUri;

        #endregion Private Fields

        /// <summary>
        /// Initializes a new instance of the SampleAdapterConnectionFactory class
        /// </summary>
        public SampleAdapterConnectionFactory(ConnectionUri connectionUri
            , ClientCredentials clientCredentials
            , SampleAdapter adapter)
        {
            this.clientCredentials = clientCredentials;
            this.adapter = adapter;
            this.conUri = (SampleAdapterConnectionUri) connectionUri;
        }

        // . . . other methods . . .

        /// <summary>
        /// This helper method returns the connection string in a format
        /// expected by the target system. This method can belong in some
        /// helper / utility class.
        /// </summary>
        /// <returns></returns>
        public string GetConnectionStringInTargetSystemFormat()
        {
            // Provider=IBMDADB2;Database=myDataBase;Hostname=myServerAddress;Protocol=TCPIP;Port=50000;Uid=myUsername;Pwd=myPassword;
            StringBuilder sb = new StringBuilder();
            sb.Append("Provider=" + this.conUri.Provider + ";");
            sb.Append("Database=" + this.conUri.Database + ";");
            sb.Append("Hostname=" + this.conUri.Hostname + ";");
            sb.Append("Protocol=" + this.conUri.Protocol + ";");
            sb.Append("Port=" + this.conUri.Port + ";");
            sb.Append("Uid=" + this.clientCredentials.UserName.UserName + ";");
            sb.Append("Pwd=" + this.clientCredentials.UserName.Password + ";");
            return sb.ToString();
        }
    }
}

Remarks

The ConnectionUri class is used as a base class when building a target system-specific connection string that conforms to the Uniform Resource Identifier (URI) syntax.

Suppose the adapter’s target system supports the following connection properties.

Copy Code
Provider=IBMDADB2;Database=myDataBase;Hostname=myServerAddress;Protocol=TCPIP;Port=50000;Uid=myUsername;Pwd=myPassword;

For the above connection properties, you can define the connection URI in the following format to be used between your adapter and WCF clients.

Copy Code
scheme://{Hostname}:{Port}/{Provider}/{Database}?Protocol={Protocol}&Driver={Driver}

The following is an example of this connection URI:

Copy Code
Db2://myServerAddress:50000/IBMDADB2/myDataBase?Protocol=TCPIP&Driver=DRIVER
Note
The Uid and Pwd can be supplied by the client of the adapter using the Username/Password via the WCF ClientCredentials class. At design-time, in the Add Adapter Service Reference Visual Studio Plug-in or the Consume Adapter Service BizTalk Project Add-in tools, the Security tab can be used by the adapter consumer to provide credentials. At runtime, the ClientCredentials can be provided via the WCF proxy (outbound) or WCF service (inbound).

Note
It’s the adapter’s responsibility to convert the connection URI to the target system-specific connection string.

The following list provides helpful guidelines for implementing ConnectionUri in your adapter:

  1. Validate each custom property so that only valid values can be set. One way to do this is to use enumerations for fixed values.

  2. Do not throw exceptions in the custom property Getter method.

  3. You can throw exceptions in the custom property Setter method as long you throw the same exceptions during the parsing of a Uri string. If these exceptions are provided, they show up as an error when an invalid value is being set in the property grid of the metadata browser UI.

  4. Do not throw exceptions in the Getter (build uri) method of the Uri property. Validation should occur and appropriate exceptions thrown in the Setter method. Exceptions thrown in the Getter will not appear on the metadata browser UI.

  5. Throw InvalidUriException in the Setter (parse uri) method of the Uri property, if user provided Uri does not pass validation.

  6. Provide an implementation for GetSampleUriString. This can aid the user in entering syntactically correct Uri.

  7. Have sufficient boundary conditions and null checks when parsing a Uri. Ensure a good error message is provided back to the user in these cases.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.ConnectionUri

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri Members
See Also Methods Properties Constructors
[image]

Represents a connection string to a target system. It can be only used as a base class.

The following tables list the members exposed by the ConnectionUri type.

Protected Constructors

Name | Description
ConnectionUri | Initializes a new instance of the ConnectionUri class.
Top

Public Properties

 | Name | Description
public property | SampleUriString | Gets a sample of the expected Uri.
public property | SecureUriString | Gets the Uri without any private data, such as user name and password.
public property | Uri | Gets or sets the Uri object for this instance of a component.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetAttributes | Returns a collection of custom attributes for this instance of a component.
public method | GetClassName | Returns the class name of this instance of a component.
public method | GetComponentName | Returns the name of this instance of a component.
public method | GetConverter | Returns a TypeConverter object for this instance of a component.
public method | GetDefaultEvent | Returns the default event for this instance of a component.
public method | GetDefaultProperty | Returns the default property for this instance of a component.
public method | GetEditor | Returns an editor of the specified type for this instance of a component.
public method | GetEvents | Overloaded. Returns the events for this instance of a component by using the specified attribute array as a filter.
public method | GetHashCode | (inherited from Object)
public method | GetProperties | Overloaded. Overloaded. Returns the properties for this instance of a component.
public method | GetPropertyOwner | Returns an object that contains the property described by the specified property descriptor.
public method | GetType | (inherited from Object)
public method | ToString | Overridden. Gets a string representation of the ConnectionUri.
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

ConnectionUri Class
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri Constructor
[image]

Initializes a new instance of the ConnectionUri class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New ConnectionUri

Syntax

Visual Basic
Protected Sub New
C#
protected ConnectionUri ()
C++
protected:
ConnectionUri ()
J#
protected ConnectionUri ()
JScript
protected function ConnectionUri ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetAttributes | Returns a collection of custom attributes for this instance of a component.
public method | GetClassName | Returns the class name of this instance of a component.
public method | GetComponentName | Returns the name of this instance of a component.
public method | GetConverter | Returns a TypeConverter object for this instance of a component.
public method | GetDefaultEvent | Returns the default event for this instance of a component.
public method | GetDefaultProperty | Returns the default property for this instance of a component.
public method | GetEditor | Returns an editor of the specified type for this instance of a component.
public method | GetEvents | Overloaded. Returns the events for this instance of a component by using the specified attribute array as a filter.
public method | GetHashCode | (inherited from Object)
public method | GetProperties | Overloaded. Overloaded. Returns the properties for this instance of a component.
public method | GetPropertyOwner | Returns an object that contains the property described by the specified property descriptor.
public method | GetType | (inherited from Object)
public method | ToString | Overridden. Gets a string representation of the ConnectionUri.

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

ConnectionUri Class
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetAttributes Method
[image]

Returns a collection of custom attributes for this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim returnValue As AttributeCollection

returnValue = instance.GetAttributes

Syntax

Visual Basic
Public Overridable Function GetAttributes As AttributeCollection
C#
public virtual AttributeCollection GetAttributes ()
C++
public:
virtual AttributeCollection^ GetAttributes ()
J#
public AttributeCollection GetAttributes ()
JScript
public function GetAttributes () : AttributeCollection

Return Value

An AttributeCollection containing attributes for this object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetClassName Method
[image]

Returns the class name of this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim returnValue As String

returnValue = instance.GetClassName

Syntax

Visual Basic
Public Overridable Function GetClassName As String
C#
public virtual string GetClassName ()
C++
public:
virtual String^ GetClassName ()
J#
public String GetClassName ()
JScript
public function GetClassName () : String

Return Value

The class name of the object, or null if the class does not have a name.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetComponentName Method
[image]

Returns the name of this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim returnValue As String

returnValue = instance.GetComponentName

Syntax

Visual Basic
Public Overridable Function GetComponentName As String
C#
public virtual string GetComponentName ()
C++
public:
virtual String^ GetComponentName ()
J#
public String GetComponentName ()
JScript
public function GetComponentName () : String

Return Value

The name of the object, or null if the object does not have a name.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetConverter Method
[image]

Returns a TypeConverter object for this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim returnValue As TypeConverter

returnValue = instance.GetConverter

Syntax

Visual Basic
Public Overridable Function GetConverter As TypeConverter
C#
public virtual TypeConverter GetConverter ()
C++
public:
virtual TypeConverter^ GetConverter ()
J#
public TypeConverter GetConverter ()
JScript
public function GetConverter () : TypeConverter

Return Value

A TypeConverter that is the converter for this object, or null if there is no TypeConverter for this object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetDefaultEvent Method
[image]

Returns the default event for this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim returnValue As EventDescriptor

returnValue = instance.GetDefaultEvent

Syntax

Visual Basic
Public Overridable Function GetDefaultEvent As EventDescriptor
C#
public virtual EventDescriptor GetDefaultEvent ()
C++
public:
virtual EventDescriptor^ GetDefaultEvent ()
J#
public EventDescriptor GetDefaultEvent ()
JScript
public function GetDefaultEvent () : EventDescriptor

Return Value

An EventDescriptor that represents the default event for this object, or null if this object does not have events.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetDefaultProperty Method
[image]

Returns the default property for this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim returnValue As PropertyDescriptor

returnValue = instance.GetDefaultProperty

Syntax

Visual Basic
Public Overridable Function GetDefaultProperty As PropertyDescriptor
C#
public virtual PropertyDescriptor GetDefaultProperty ()
C++
public:
virtual PropertyDescriptor^ GetDefaultProperty ()
J#
public PropertyDescriptor GetDefaultProperty ()
JScript
public function GetDefaultProperty () : PropertyDescriptor

Return Value

A PropertyDescriptor that represents the default property for this object, or null if this object does not have properties.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetEditor Method
[image]

Returns an editor of the specified type for this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim editorBaseType As Type
Dim returnValue As Object

returnValue = instance.GetEditor(editorBaseType)

Syntax

Visual Basic
Public Overridable Function GetEditor ( _
    editorBaseType As Type _
) As Object
C#
public virtual Object GetEditor (
    Type editorBaseType
)
C++
public:
virtual Object^ GetEditor (
    Type^ editorBaseType
)
J#
public Object GetEditor (
    Type editorBaseType
)
JScript
public function GetEditor (
    editorBaseType : Type
) : Object

Parameters

editorBaseType

A Type that represents the editor for this object.

Return Value

An Object of the specified type that is the editor for this object, or null if the editor cannot be found.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetEvents Method
[image]

Returns the events for this instance of a component by using the specified attribute array as a filter.

Overload List

Name | Description
ConnectionUri.GetEvents () | Overloaded. Returns the events for this instance of a component.
ConnectionUri.GetEvents (Attribute[]) | Overloaded. Returns the events for this instance of a component by using the specified attribute array as a filter.

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetEvents Method ()
[image]

Overloaded. Returns the events for this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim returnValue As EventDescriptorCollection

returnValue = instance.GetEvents

Syntax

Visual Basic
Public Overridable Function GetEvents As EventDescriptorCollection
C#
public virtual EventDescriptorCollection GetEvents ()
C++
public:
virtual EventDescriptorCollection^ GetEvents ()
J#
public EventDescriptorCollection GetEvents ()
JScript
public function GetEvents () : EventDescriptorCollection

Return Value

An EventDescriptorCollection that represents the events for this component instance.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetEvents Method (Attribute[])
[image]

Overloaded. Returns the events for this instance of a component by using the specified attribute array as a filter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim attributes As Attribute()
Dim returnValue As EventDescriptorCollection

returnValue = instance.GetEvents(attributes)

Syntax

Visual Basic
Public Overridable Function GetEvents ( _
    attributes As Attribute() _
) As EventDescriptorCollection
C#
public virtual EventDescriptorCollection GetEvents (
    Attribute[] attributes
)
C++
public:
virtual EventDescriptorCollection^ GetEvents (
    array<Attribute^>^ attributes
)
J#
public EventDescriptorCollection GetEvents (
    Attribute[] attributes
)
JScript
public function GetEvents (
    attributes : Attribute[]
) : EventDescriptorCollection

Parameters

Attributes

An array of type Attribute that is used as a filter.

Return Value

An EventDescriptorCollection that represents the filtered events for this component instance.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetProperties Method
[image]

Overloaded. Returns the properties for this instance of a component.

Overload List

Name | Description
ConnectionUri.GetProperties () | Overloaded. Gets the properties for this instance of a component.
ConnectionUri.GetProperties (Attribute[]) | Overloaded. Returns the properties for this instance of a component by using the attribute array as a filter.

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetProperties Method ()
[image]

Overloaded. Gets the properties for this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim returnValue As PropertyDescriptorCollection

returnValue = instance.GetProperties

Syntax

Visual Basic
Public Overridable Function GetProperties As PropertyDescriptorCollection
C#
public virtual PropertyDescriptorCollection GetProperties ()
C++
public:
virtual PropertyDescriptorCollection^ GetProperties ()
J#
public PropertyDescriptorCollection GetProperties ()
JScript
public function GetProperties () : PropertyDescriptorCollection

Return Value

A PropertyDescriptorCollection that represents the properties for this instance of a component.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetProperties Method (Attribute[])
[image]

Overloaded. Returns the properties for this instance of a component by using the attribute array as a filter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim attributes As Attribute()
Dim returnValue As PropertyDescriptorCollection

returnValue = instance.GetProperties(attributes)

Syntax

Visual Basic
Public Overridable Function GetProperties ( _
    attributes As Attribute() _
) As PropertyDescriptorCollection
C#
public virtual PropertyDescriptorCollection GetProperties (
    Attribute[] attributes
)
C++
public:
virtual PropertyDescriptorCollection^ GetProperties (
    array<Attribute^>^ attributes
)
J#
public PropertyDescriptorCollection GetProperties (
    Attribute[] attributes
)
JScript
public function GetProperties (
    attributes : Attribute[]
) : PropertyDescriptorCollection

Parameters

Attributes

An array of type Attribute that is used as a filter.

Return Value

A PropertyDescriptorCollection that represents the filtered properties for this instance of a component.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetPropertyOwner Method
[image]

Returns an object that contains the property described by the specified property descriptor.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim pd As PropertyDescriptor
Dim returnValue As Object

returnValue = instance.GetPropertyOwner(pd)

Syntax

Visual Basic
Public Overridable Function GetPropertyOwner ( _
    pd As PropertyDescriptor _
) As Object
C#
public virtual Object GetPropertyOwner (
    PropertyDescriptor pd
)
C++
public:
virtual Object^ GetPropertyOwner (
    PropertyDescriptor^ pd
)
J#
public Object GetPropertyOwner (
    PropertyDescriptor pd
)
JScript
public function GetPropertyOwner (
    pd : PropertyDescriptor
) : Object

Parameters

Pd

A PropertyDescriptor that represents the property whose owner is to be found.

Return Value

An Object represents the owner of the specified property.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetQueryStringValue Method
See Also Example
[image]

Parses a Uri and returns an array of values for a given querystring name.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim uri As Uri
Dim queryName As String
Dim returnValue As String()

returnValue = ConnectionUri.GetQueryStringValue(uri, queryName)

Syntax

Visual Basic
Protected Friend Shared Function GetQueryStringValue ( _
    uri As Uri, _
    queryName As String _
) As String()
C#
protected internal static string[] GetQueryStringValue (
    Uri uri,
    string queryName
)
C++
protected public:
static array<String^>^ GetQueryStringValue (
    Uri^ uri,
    String^ queryName
)
J#
protected static String[] GetQueryStringValue (
    Uri uri,
    String queryName
)
JScript
protected internal static function GetQueryStringValue (
    uri : Uri,
    queryName : String
) : String[]

Parameters

Uri

The Uri to be parsed.

queryName

The querystring name.

Return Value

An array of the querystring values.

Example

Consider the following Uri:

Copy Code
Sample://hostname:1000/Provider?Protocol=X&Driver=Y

You can obtain the values of query string parameters 'Protocol' and 'Driver' by using this method.

C# Copy Code
String[] protocolValues = ConnectionUri.GetQueryStringValue(uri, "Protocol");
String[] driverValues = ConnectionUri.GetQueryStringValue(uri, "Driver");
String protocolValue = protocolValues[0];
String driverValue = driverValues[0];

Remarks

This is a helper function for parsing a ConnectionUri.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.GetUserInfoValue Method
See Also Example
[image]

Parses a Uri and returns an array of values for a given key in UserInfo section. This method is a helper function.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim uri As Uri
Dim userInfoName As String
Dim returnValue As String()

returnValue = ConnectionUri.GetUserInfoValue(uri, userInfoName)

Syntax

Visual Basic
Protected Friend Shared Function GetUserInfoValue ( _
    uri As Uri, _
    userInfoName As String _
) As String()
C#
protected internal static string[] GetUserInfoValue (
    Uri uri,
    string userInfoName
)
C++
protected public:
static array<String^>^ GetUserInfoValue (
    Uri^ uri,
    String^ userInfoName
)
J#
protected static String[] GetUserInfoValue (
    Uri uri,
    String userInfoName
)
JScript
protected internal static function GetUserInfoValue (
    uri : Uri,
    userInfoName : String
) : String[]

Parameters

Uri

The Uri to be parsed.

userInfoName

The UserInfo name.

Return Value

An array of the UserInfo values.

Example

Consider the following connection URI string:

Copy Code
sample://username:password;group=manager@hostname/provider

You can use this helper function to obtain user name, password, or other user-specific information.

C# Copy Code
string[] groupValues = ConnectionUri.GetUserInfoValue(uri, "group");

Remarks

This is a helper function for parsing a ConnectionUri.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace
Uri
UserInfo


ConnectionUri.ToString Method
[image]

Gets a string representation of the ConnectionUri.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim returnValue As String

returnValue = instance.ToString

Syntax

Visual Basic
Public Overrides Function ToString As String
C#
public override string ToString ()
C++
public:
virtual String^ ToString () override
J#
public String ToString ()
JScript
public override function ToString () : String

Return Value

A string representation of the ConnectionUri object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri Properties
[image]

Public Properties

 | Name | Description
public property | SampleUriString | Gets a sample of the expected Uri.
public property | SecureUriString | Gets the Uri without any private data, such as user name and password.
public property | Uri | Gets or sets the Uri object for this instance of a component.

See Also

Reference

ConnectionUri Class
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.SampleUriString Property
See Also Example
[image]

Gets a sample of the expected Uri.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim value As String

value = instance.SampleUriString

Syntax

Visual Basic
<BrowsableAttribute(False)> _
<SuppressMessageAttribute("Microsoft.Design", "CA1055:UriReturnValuesShouldNotBeStrings")> _
<SuppressMessageAttribute("Microsoft.Design", "CA1056:UriPropertiesShouldNotBeStrings")> _
Public Overridable ReadOnly Property SampleUriString As String
C#
[BrowsableAttribute(false)]
[SuppressMessageAttribute("Microsoft.Design", "CA1055:UriReturnValuesShouldNotBeStrings")]
[SuppressMessageAttribute("Microsoft.Design", "CA1056:UriPropertiesShouldNotBeStrings")]
public virtual string SampleUriString { get; }
C++
[BrowsableAttribute(false)]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1055:UriReturnValuesShouldNotBeStrings")]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1056:UriPropertiesShouldNotBeStrings")]
public:
virtual property String^ SampleUriString {
    String^ get ();
}
J#
/** @property */
public String get_SampleUriString ()
JScript
public function get SampleUriString () : String

Property Value

A string representation for a sample Uri.

Example

The following code example shows an implementation of this method.

C# Copy Code
public override string SampleUriString
{
    get
    {
        return "sample://{Hostname}:{Port}/{Provider}/{Database}?Protocol={Protocol}&Driver={Driver}";
    }
}

Remarks

Use this property to provide guidance on how to construct a valid Uri using your adapter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.SecureUriString Property
[image]

Gets the Uri without any private data, such as user name and password.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim value As String

value = instance.SecureUriString

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1055:UriReturnValuesShouldNotBeStrings")> _
<SuppressMessageAttribute("Microsoft.Design", "CA1056:UriPropertiesShouldNotBeStrings")> _
<BrowsableAttribute(False)> _
Public Overridable ReadOnly Property SecureUriString As String
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1055:UriReturnValuesShouldNotBeStrings")]
[SuppressMessageAttribute("Microsoft.Design", "CA1056:UriPropertiesShouldNotBeStrings")]
[BrowsableAttribute(false)]
public virtual string SecureUriString { get; }
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1055:UriReturnValuesShouldNotBeStrings")]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1056:UriPropertiesShouldNotBeStrings")]
[BrowsableAttribute(false)]
public:
virtual property String^ SecureUriString {
    String^ get ();
}
J#
/** @property */
public String get_SecureUriString ()
JScript
public function get SecureUriString () : String

Property Value

A string representation for Uri object without secure information.

Remarks

This value may be used in publicly accessible features such as performance counters, logs, and custom applications.

Important
If you do not provide an implementation, the WCF LOB Adapter Development Wizard will use Uri. If you have secure information, you should provide a custom implementation.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


ConnectionUri.Uri Property
See Also Example
[image]

Gets or sets the Uri object for this instance of a component.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ConnectionUri
Dim value As Uri

value = instance.Uri

instance.Uri = value

Syntax

Visual Basic
<BrowsableAttribute(False)> _
Public MustOverride Property Uri As Uri
C#
[BrowsableAttribute(false)]
public abstract Uri Uri { get; set; }
C++
[BrowsableAttribute(false)]
public:
virtual property Uri^ Uri {
    Uri^ get () abstract;
    void set (Uri^ value) abstract;
}
J#
/** @property */
public abstract Uri get_Uri ()

/** @property */
public abstract void set_Uri (Uri value)
JScript
public abstract function get Uri () : Uri

public abstract function set Uri (value : Uri)

Property Value

A Uri containing the connection URI.

Example

For an example on using this property, see ConnectionUri.

Remarks

In the 'getter', build the connection URI from the available properties within this class.

In the 'setter', parse the connection URI and set into available properties within this class.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionUri Class
ConnectionUri Members
Microsoft.ServiceModel.Channels.Common Namespace


CredentialsException Class
See Also Members
[image]

The exception that is thrown when access to the adapter's target system is denied or client credentials were not passed to the adapter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As CredentialsException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class CredentialsException
    Inherits AddressAccessDeniedException
C#
[SerializableAttribute]
public class CredentialsException : AddressAccessDeniedException
C++
[SerializableAttribute]
public ref class CredentialsException : public AddressAccessDeniedException
J#
/** @attribute SerializableAttribute() */
public class CredentialsException extends AddressAccessDeniedException
JScript
SerializableAttribute
public class CredentialsException extends AddressAccessDeniedException

Remarks

CredentialsException should be thrown whenever an adapter has problems retrieving credentials including user name or password. You should use ConnectionException for other connection-related problems.

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
System.ServiceModel.AddressAccessDeniedException
Microsoft.ServiceModel.Channels.Common.CredentialsException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CredentialsException Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


CredentialsException Members
See Also Constructors Methods Properties
[image]

The exception that is thrown when access to the adapter's target system is denied or client credentials were not passed to the adapter.

The following tables list the members exposed by the CredentialsException type.

Public Constructors (see also Protected Constructors)

Name | Description
CredentialsException | Overloaded. Initializes a new instance of the CredentialsException class.
Top

Protected Constructors

Name | Description
CredentialsException | Overloaded. Initializes a new instance of the CredentialsException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

CredentialsException Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


CredentialsException Constructor
[image]

Initializes a new instance of the CredentialsException class.

Overload List

Name | Description
CredentialsException () | Initializes a new instance of the CredentialsException class.
CredentialsException (SerializationInfo, StreamingContext) | Initializes a new instance of the CredentialsException class by using the specified serialization information and context objects.
CredentialsException (String) | Initializes a new instance of the CredentialsException class by using the specified error message.
CredentialsException (String, Exception) | Initializes a new instance of the CredentialsException class by using the specified error message and the inner Exception.

See Also

Reference

CredentialsException Class
CredentialsException Members
Microsoft.ServiceModel.Channels.Common Namespace


CredentialsException Constructor ()
[image]

Initializes a new instance of the CredentialsException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New CredentialsException

Syntax

Visual Basic
Public Sub New
C#
public CredentialsException ()
C++
public:
CredentialsException ()
J#
public CredentialsException ()
JScript
public function CredentialsException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CredentialsException Class
CredentialsException Members
Microsoft.ServiceModel.Channels.Common Namespace


CredentialsException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the CredentialsException class by using the specified serialization information and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New CredentialsException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected CredentialsException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
CredentialsException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected CredentialsException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function CredentialsException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CredentialsException Class
CredentialsException Members
Microsoft.ServiceModel.Channels.Common Namespace


CredentialsException Constructor (String)
[image]

Initializes a new instance of the CredentialsException class by using the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New CredentialsException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public CredentialsException (
    string message
)
C++
public:
CredentialsException (
    String^ message
)
J#
public CredentialsException (
    String message
)
JScript
public function CredentialsException (
    message : String
)

Parameters

Message

The message that describes the error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CredentialsException Class
CredentialsException Members
Microsoft.ServiceModel.Channels.Common Namespace


CredentialsException Constructor (String, Exception)
[image]

Initializes a new instance of the CredentialsException class by using the specified error message and the inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New CredentialsException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public CredentialsException (
    string message,
    Exception inner
)
C++
public:
CredentialsException (
    String^ message,
    Exception^ inner
)
J#
public CredentialsException (
    String message,
    Exception inner
)
JScript
public function CredentialsException (
    message : String,
    inner : Exception
)

Parameters

message

The message that describes the error.

inner

The inner Exception reference.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

CredentialsException Class
CredentialsException Members
Microsoft.ServiceModel.Channels.Common Namespace


CredentialsException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

CredentialsException Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


CredentialsException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

CredentialsException Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


DurationTypeMetadata Class
See Also Example Members
[image]

Represents a specific duration type for serialization.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As DurationTypeMetadata

Syntax

Visual Basic
Public Class DurationTypeMetadata
    Inherits TypeMetadata
C#
public class DurationTypeMetadata : TypeMetadata
C++
public ref class DurationTypeMetadata : public TypeMetadata
J#
public class DurationTypeMetadata extends TypeMetadata
JScript
public class DurationTypeMetadata extends TypeMetadata

Example

The following code example from the IMetadataResolverHandler implementation shows how to use this type metadata.

C# Copy Code
{
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here

    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata("/Sample/UpdateData", "UpdateData");
    // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    // Syntax: bool UpdateData(string uniqueID, string duration)
    opMetadata.DisplayName = "UpdateData";
    // Create parameters
    OperationParameter parmUniqueID = new OperationParameter("uniqueID", OperationParameterDirection.In, QualifiedType.GuidType, false);
    OperationParameter parmDuration = new OperationParameter("duration", OperationParameterDirection.In, QualifiedType.DurationType, false);
    opMetadata.Parameters.Add(parmUniqueID);
    opMetadata.Parameters.Add(parmDuration);
    // Create result
    opMetadata.OperationResult = new OperationResult(QualifiedType.BooleanType, false);
    return opMetadata;
}

Use the following code to generate WSDL from this operation.

C# Copy Code
class Program
{
    static void Main(string[] args)
    {
        // create the binding
        SampleAdapterBinding binding = new SampleAdapterBinding();
        // create the endpoint address
        EndpointAddress address = new EndpointAddress("sample://host:100/DB2OLEDB/MyDB?Protocol=TCPIP&Driver=Test");
        // create metadata retrieval client
        MetadataRetrievalClient metadataProxy = new MetadataRetrievalClient(binding, address);
        // Show the nodes on the console
        MetadataRetrievalNode op1 = new MetadataRetrievalNode();
        op1.NodeId = "/Sample/UpdateData";
        op1.IsOperation = true;
        List<MetadataRetrievalNode> nodes = new List<MetadataRetrievalNode>();
        nodes.Add(op1);
        // Get the WSDL
        ServiceDescription wsdl = metadataProxy.GetMetadata(nodes.ToArray());
        // Write the WSDL to a file
        wsdl.Write(@"c:\temp\sample.wsdl");
        // close the client
        metadataProxy.Close();
    }
}

The following section shows the generated XML schema types and elements within the <types> section of the WSDL document.

Copy Code
<schema xmlns:ns3="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0" xmlns="http://www.w3.org/2001/XMLSchema">
  <import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <element name="UpdateData">
    <complexType>
      <sequence>
        <element minOccurs="1" maxOccurs="1" name="uniqueID" type="ns3:guid" />
        <element minOccurs="1" maxOccurs="1" name="duration" type="ns3:duration" />
      </sequence>
    </complexType>
  </element>
  <element name="UpdateDataResponse">
    <complexType>
      <sequence>
        <element minOccurs="1" maxOccurs="1" name="UpdateDataResult" type="boolean" />
      </sequence>
    </complexType>
  </element>
</schema>

<schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns="http://www.w3.org/2001/XMLSchema">
  <xs:element name="duration" nillable="true" type="tns:duration" />
  <xs:simpleType name="duration">
    <xs:restriction base="xs:duration">
      <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
      <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
      <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="guid" nillable="true" type="tns:guid" />
  <xs:simpleType name="guid">
    <xs:restriction base="xs:string">
      <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
    </xs:restriction>
  </xs:simpleType>
</schema>

Remarks

This class is not a standard World Wide Web Consortium (W3C) XML schema type. Instead, it belongs to the namespace http://schemas.microsoft.com/2003/10/Serialization/. It is used within the IMetadataResolverHandler interface. It can also be specified for the following classes when resolving metadata:

  • OperationParameter

  • OperationResult

  • TypeMember

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Microsoft.ServiceModel.Channels.Common.DurationTypeMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

DurationTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


DurationTypeMetadata Members
See Also Constructors Fields Methods Properties
[image]

Represents a specific duration type for serialization.

The following tables list the members exposed by the DurationTypeMetadata type.

Public Constructors

Name | Description
DurationTypeMetadata | Initializes a new instance of the DurationTypeMetadata class.
Top

Public Fields

Name | Description
TypeId | Represents the Unique TypeId of the current DurationTypeMetadata object.
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a value that indicates whether a default value can be set for that type or not.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

DurationTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


DurationTypeMetadata Fields
[image]

Public Fields

Name | Description
TypeId | Represents the Unique TypeId of the current DurationTypeMetadata object.

See Also

Reference

DurationTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


DurationTypeMetadata.TypeId Field
[image]

Represents the Unique TypeId of the current DurationTypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As String

value = DurationTypeMetadata.TypeId

Syntax

Visual Basic
Public Const TypeId As String
C#
public const string TypeId
C++
public:
literal String^ TypeId
J#
public static final String TypeId
JScript
public const var TypeId : String

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

DurationTypeMetadata Class
DurationTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


DurationTypeMetadata Constructor
[image]

Initializes a new instance of the DurationTypeMetadata class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New DurationTypeMetadata

Syntax

Visual Basic
Public Sub New
C#
public DurationTypeMetadata ()
C++
public:
DurationTypeMetadata ()
J#
public DurationTypeMetadata ()
JScript
public function DurationTypeMetadata ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

DurationTypeMetadata Class
DurationTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


DurationTypeMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

DurationTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


DurationTypeMetadata.ExportXmlSchema Method
[image]

Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As DurationTypeMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Overrides Sub ExportXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public override void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
virtual void ExportXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public override function ExportXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the type uses to export its schema and namespace's prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

timespan

The time-out of the operation.

Remarks

This method is responsible for generating XmlSchema serialization types and elements corresponding to this type metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

DurationTypeMetadata Class
DurationTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


DurationTypeMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a value that indicates whether a default value can be set for that type or not.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)

See Also

Reference

DurationTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
GuidTypeMetadata
IMetadataResolverHandler


DurationTypeMetadata.CanSetDefaultValue Property
[image]

Gets a value that indicates whether a default value can be set for that type or not.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As DurationTypeMetadata
Dim value As Boolean

value = instance.CanSetDefaultValue

Syntax

Visual Basic
Public Overrides ReadOnly Property CanSetDefaultValue As Boolean
C#
public override bool CanSetDefaultValue { get; }
C++
public:
virtual property bool CanSetDefaultValue {
    bool get () override;
}
J#
/** @property */
public boolean get_CanSetDefaultValue ()
JScript
public override function get CanSetDefaultValue () : boolean

Property Value

A Boolean that indicates if a default value can be set for that type.

Remarks

The default value can be set for the duration type metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

DurationTypeMetadata Class
DurationTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


EnumTypeMetadata Class
See Also Example Members
[image]

Represents a base class for enumerated. This class cannot be inherited.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As EnumTypeMetadata

Syntax

Visual Basic
Public NotInheritable Class EnumTypeMetadata
    Inherits BasicTypeMetadata
C#
public sealed class EnumTypeMetadata : BasicTypeMetadata
C++
public ref class EnumTypeMetadata sealed : public BasicTypeMetadata
J#
public final class EnumTypeMetadata extends BasicTypeMetadata
JScript
public final class EnumTypeMetadata extends BasicTypeMetadata

Example

Suppose you want an XML schema with a complex type that contains an element of type enumeration as shown below.

Copy Code
<complexType name="SampleComplexObject">
<sequence>
  <element minOccurs="1" maxOccurs="1" name="uniqueID" type="string" />
  <element minOccurs="1" maxOccurs="1" name="salutation" type="ns4:Salutation" />
  <element minOccurs="1" maxOccurs="1" name="amount">
    <simpleType>
      <restriction base="decimal">
        <fractionDigits value="5" />
      </restriction>
    </simpleType>
  </element>
</sequence>
</complexType>
<simpleType name="Salutation">
<restriction base="string">
  <enumeration value="Mr." />
  <enumeration value="Mrs." />
  <enumeration value="Miss" />
</restriction>
</simpleType>

The following code example from the IMetadataResolverHandler implementation shows how the previous output can be accomplished by using the EnumTypeMetadata class.

C# Copy Code
    public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
    {
        . . .
        public TypeMetadata ResolveTypeMetadata(string typeId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
        {
            extraTypeMetadataResolved = null;
            switch (typeId)
            {
                case "/Echo/Enum/Salutation":
                    EnumTypeMetadata salutationTM = new EnumTypeMetadata(typeId, "Salutation", new String[] { "Mr.", "Mrs.", "Miss" });
                    salutationTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE + "/types";
                    return salutationTM;

                case "/Echo/SampleComplexObject":
                    StructuredTypeMetadata complexObjTM = new StructuredTypeMetadata(typeId, "SampleComplexObject");
                    complexObjTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE + "/types";
                    complexObjTM.Members.Add(new TypeMember("uniqueID", QualifiedType.StringType, false));
                    complexObjTM.Members.Add(new TypeMember("salutation", new ComplexQualifiedType("/Echo/Enum/Salutation"), false));
                    return complexObjTM;

                default:
                    throw new AdapterException("Invalid type " + typeId);
            }
        }
    }
}

Remarks

This class is used within the implementation of the IMetadataResolverHandler interface.

This class can be specified for the following classes:

  • OperationParameter

  • OperationResult

  • TypeMember

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Microsoft.ServiceModel.Channels.Common.BasicTypeMetadata
Microsoft.ServiceModel.Channels.Common.EnumTypeMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

EnumTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
BasicTypeMetadata
TypeMetadata
IMetadataResolverHandler


EnumTypeMetadata Members
See Also Constructors Methods Properties
[image]

Represents a base class for enumerated. This class cannot be inherited.

The following tables list the members exposed by the EnumTypeMetadata type.

Public Constructors

Name | Description
EnumTypeMetadata | Overloaded. Initializes a new instance of the EnumTypeMetadata class.
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a value indicating whether a default value can be set for that type. This method is overridden from TypeMetadata. (inherited from TypeMetadata)
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Content | Gets or sets the XmlSchemaSimpleTypeContent of the current BasicTypeMetadata object. (inherited from BasicTypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Values | Gets the enumeration values from the current EnumTypeMetadata object.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext. (inherited from TypeMetadata)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

EnumTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
BasicTypeMetadata
TypeMetadata
IMetadataResolverHandler


EnumTypeMetadata Constructor
[image]

Initializes a new instance of the EnumTypeMetadata class.

Overload List

Name | Description
EnumTypeMetadata (String, String, String[]) | Initializes a new instance of the EnumTypeMetadata class by using the specified type Id, type name, and enumeration values.
EnumTypeMetadata (String, String, String[], DateTime, Boolean) | Initializes a new instance of the EnumTypeMetadata class by using the specified type Id, type name, enumeration values, metadata time-stamp, and expiration flag.

See Also

Reference

EnumTypeMetadata Class
EnumTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


EnumTypeMetadata Constructor (String, String, String[])
[image]

Initializes a new instance of the EnumTypeMetadata class by using the specified type Id, type name, and enumeration values.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeId As String
Dim typeName As String
Dim values As String()

Dim instance As New EnumTypeMetadata(typeId, typeName, values)

Syntax

Visual Basic
Public Sub New ( _
    typeId As String, _
    typeName As String, _
    values As String() _
)
C#
public EnumTypeMetadata (
    string typeId,
    string typeName,
    string[] values
)
C++
public:
EnumTypeMetadata (
    String^ typeId,
    String^ typeName,
    array<String^>^ values
)
J#
public EnumTypeMetadata (
    String typeId,
    String typeName,
    String[] values
)
JScript
public function EnumTypeMetadata (
    typeId : String,
    typeName : String,
    values : String[]
)

Parameters

typeId

The unique type Id for that type.

typeName

The name of the type.

Values

The enumeration type values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

EnumTypeMetadata Class
EnumTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


EnumTypeMetadata Constructor (String, String, String[], DateTime, Boolean)
[image]

Initializes a new instance of the EnumTypeMetadata class by using the specified type Id, type name, enumeration values, metadata time-stamp, and expiration flag.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeId As String
Dim typeName As String
Dim values As String()
Dim metadataTimestamp As DateTime
Dim neverExpires As Boolean

Dim instance As New EnumTypeMetadata(typeId, typeName, values, metadataTimestamp, neverExpires)

Syntax

Visual Basic
Public Sub New ( _
    typeId As String, _
    typeName As String, _
    values As String(), _
    metadataTimestamp As DateTime, _
    neverExpires As Boolean _
)
C#
public EnumTypeMetadata (
    string typeId,
    string typeName,
    string[] values,
    DateTime metadataTimestamp,
    bool neverExpires
)
C++
public:
EnumTypeMetadata (
    String^ typeId,
    String^ typeName,
    array<String^>^ values,
    DateTime metadataTimestamp,
    bool neverExpires
)
J#
public EnumTypeMetadata (
    String typeId,
    String typeName,
    String[] values,
    DateTime metadataTimestamp,
    boolean neverExpires
)
JScript
public function EnumTypeMetadata (
    typeId : String,
    typeName : String,
    values : String[],
    metadataTimestamp : DateTime,
    neverExpires : boolean
)

Parameters

typeId

The unique type Id for that type.

typeName

The name of the type.

Values

The enumeration type values.

metadataTimestamp

The time-stamp of the type's metadata.

neverExpires

A flag that indicates whether the metadata for the type will expire or not.

true if metadata type never expires; otherwise, false.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

EnumTypeMetadata Class
EnumTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


EnumTypeMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext. (inherited from TypeMetadata)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

EnumTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
BasicTypeMetadata
TypeMetadata
IMetadataResolverHandler


EnumTypeMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a value indicating whether a default value can be set for that type. This method is overridden from TypeMetadata. (inherited from TypeMetadata)
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Content | Gets or sets the XmlSchemaSimpleTypeContent of the current BasicTypeMetadata object. (inherited from BasicTypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Values | Gets the enumeration values from the current EnumTypeMetadata object.

See Also

Reference

EnumTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
BasicTypeMetadata
TypeMetadata
IMetadataResolverHandler


EnumTypeMetadata.Values Property
[image]

Gets the enumeration values from the current EnumTypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As EnumTypeMetadata
Dim value As String()

value = instance.Values

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")> _
Public ReadOnly Property Values As String()
C#
[SuppressMessageAttribute("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")]
public string[] Values { get; }
C++
[SuppressMessageAttribute(L"Microsoft.Performance", L"CA1819:PropertiesShouldNotReturnArrays")]
public:
property array<String^>^ Values {
    array<String^>^ get ();
}
J#
/** @property */
public String[] get_Values ()
JScript
public function get Values () : String[]

Property Value

An array of String containing the enumerated values.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

EnumTypeMetadata Class
EnumTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


GuidTypeMetadata Class
See Also Example Members
[image]

Represents a specific Guid type for serialization.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As GuidTypeMetadata

Syntax

Visual Basic
Public Class GuidTypeMetadata
    Inherits TypeMetadata
C#
public class GuidTypeMetadata : TypeMetadata
C++
public ref class GuidTypeMetadata : public TypeMetadata
J#
public class GuidTypeMetadata extends TypeMetadata
JScript
public class GuidTypeMetadata extends TypeMetadata

Example

The following code example from the IMetadataResolverHandler implementation shows how to use this type metadata.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here

    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata("/Sample/UpdateData", "UpdateData");
    // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    // Syntax: bool UpdateData(string uniqueID, string duration)
    opMetadata.DisplayName = "UpdateData";
    // Create parameters
    OperationParameter parmUniqueID = new OperationParameter("uniqueID", OperationParameterDirection.In, QualifiedType.GuidType, false);
    OperationParameter parmDuration = new OperationParameter("duration", OperationParameterDirection.In, QualifiedType.DurationType, false);
    opMetadata.Parameters.Add(parmUniqueID);
    opMetadata.Parameters.Add(parmDuration);
    // Create result
    opMetadata.OperationResult = new OperationResult(QualifiedType.BooleanType, false);
    return opMetadata;
}

You can use the following code to generate the WSDL document for this operation.

C# Copy Code
class Program
{
    static void Main(string[] args)
    {
        // create the binding
        SampleAdapterBinding binding = new SampleAdapterBinding();
        // create the endpoint address
        EndpointAddress address = new EndpointAddress("sample://host:100/DB2OLEDB/MyDB?Protocol=TCPIP&Driver=Test");
        // create metadata retrieval client
        MetadataRetrievalClient metadataProxy = new MetadataRetrievalClient(binding, address);
        // Show the nodes on the console
        MetadataRetrievalNode op1 = new MetadataRetrievalNode();
        op1.NodeId = "/Sample/UpdateData";
        op1.IsOperation = true;
        List<MetadataRetrievalNode> nodes = new List<MetadataRetrievalNode>();
        nodes.Add(op1);
        // Get the WSDL
        ServiceDescription wsdl = metadataProxy.GetMetadata(nodes.ToArray());
        // Write the WSDL to a file
        wsdl.Write(@"c:\temp\sample.wsdl");
        // close the client
        metadataProxy.Close();
    }
}

The following section shows the generated XML schema types and elements within the <types> section of the WSDL document.

Copy Code
<schema xmlns:ns3="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0" xmlns="http://www.w3.org/2001/XMLSchema">
  <import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <element name="UpdateData">
    <complexType>
      <sequence>
        <element minOccurs="1" maxOccurs="1" name="uniqueID" type="ns3:guid" />
        <element minOccurs="1" maxOccurs="1" name="duration" type="ns3:duration" />
      </sequence>
    </complexType>
  </element>
  <element name="UpdateDataResponse">
    <complexType>
      <sequence>
        <element minOccurs="1" maxOccurs="1" name="UpdateDataResult" type="boolean" />
      </sequence>
    </complexType>
  </element>
</schema>

<schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns="http://www.w3.org/2001/XMLSchema">
  <xs:element name="duration" nillable="true" type="tns:duration" />
  <xs:simpleType name="duration">
    <xs:restriction base="xs:duration">
      <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
      <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
      <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="guid" nillable="true" type="tns:guid" />
  <xs:simpleType name="guid">
    <xs:restriction base="xs:string">
      <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
    </xs:restriction>
  </xs:simpleType>
</schema>

Remarks

This class is not a standard World Wide Web Consortium (W3C) XML schema type. Instead, it belongs to the namespace http://schemas.microsoft.com/2003/10/Serialization/. It is used within the IMetadataResolverHandler interface. It can also be specified for the following classes when resolving metadata:

  • OperationParameter

  • OperationResult

  • TypeMember

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Microsoft.ServiceModel.Channels.Common.GuidTypeMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

GuidTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
DurationTypeMetadata
IMetadataResolverHandler


GuidTypeMetadata Members
See Also Constructors Fields Methods Properties
[image]

Represents a specific Guid type for serialization.

The following tables list the members exposed by the GuidTypeMetadata type.

Public Constructors

Name | Description
GuidTypeMetadata | Initializes a new instance of the GuidTypeMetadata class.
Top

Public Fields

Name | Description
TypeId | Represents the Unique TypeId of the GuidTypeMetadata.
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a value to indicate whether a default value can be set for this type or not.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet, and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

GuidTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
DurationTypeMetadata
IMetadataResolverHandler


GuidTypeMetadata Fields
[image]

Public Fields

Name | Description
TypeId | Represents the Unique TypeId of the GuidTypeMetadata.

See Also

Reference

GuidTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
DurationTypeMetadata
IMetadataResolverHandler


GuidTypeMetadata.TypeId Field
[image]

Represents the Unique TypeId of the GuidTypeMetadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As String

value = GuidTypeMetadata.TypeId

Syntax

Visual Basic
Public Const TypeId As String
C#
public const string TypeId
C++
public:
literal String^ TypeId
J#
public static final String TypeId
JScript
public const var TypeId : String

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GuidTypeMetadata Class
GuidTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


GuidTypeMetadata Constructor
[image]

Initializes a new instance of the GuidTypeMetadata class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New GuidTypeMetadata

Syntax

Visual Basic
Public Sub New
C#
public GuidTypeMetadata ()
C++
public:
GuidTypeMetadata ()
J#
public GuidTypeMetadata ()
JScript
public function GuidTypeMetadata ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GuidTypeMetadata Class
GuidTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


GuidTypeMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet, and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

GuidTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
DurationTypeMetadata
IMetadataResolverHandler


GuidTypeMetadata.ExportXmlSchema Method
[image]

Exports the type's schema to the SchemaSet, and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As GuidTypeMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Overrides Sub ExportXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public override void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
virtual void ExportXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public override function ExportXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the type uses to export its schema and namespace prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

timeout

The time-out of the operation.

Remarks

This method is responsible for generating XmlSchema serialization types and elements corresponding to this type metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GuidTypeMetadata Class
GuidTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


GuidTypeMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a value to indicate whether a default value can be set for this type or not.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)

See Also

Reference

GuidTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
CharTypeMetadata
DurationTypeMetadata
IMetadataResolverHandler


GuidTypeMetadata.CanSetDefaultValue Property
[image]

Gets a value to indicate whether a default value can be set for this type or not.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As GuidTypeMetadata
Dim value As Boolean

value = instance.CanSetDefaultValue

Syntax

Visual Basic
Public Overrides ReadOnly Property CanSetDefaultValue As Boolean
C#
public override bool CanSetDefaultValue { get; }
C++
public:
virtual property bool CanSetDefaultValue {
    bool get () override;
}
J#
/** @property */
public boolean get_CanSetDefaultValue ()
JScript
public override function get CanSetDefaultValue () : boolean

Property Value

true if a default value can be set; otherwise, false.

Remarks

The default value can be set for the Guid type metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GuidTypeMetadata Class
GuidTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


IAsyncInboundHandler Interface
See Also Members
[image]

Represents an interface for receiving data from a target system using asynchronous method calls. This class contains asynchronous variants of methods defined in the IInboundHandler.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAsyncInboundHandler

Syntax

Visual Basic
Public Interface IAsyncInboundHandler
    Inherits IInboundHandler, IConnectionHandler, IDisposable
C#
public interface IAsyncInboundHandler : IInboundHandler, IConnectionHandler, IDisposable
C++
public interface class IAsyncInboundHandler : IInboundHandler, IConnectionHandler, IDisposable
J#
public interface IAsyncInboundHandler extends IInboundHandler, IConnectionHandler,
    IDisposable
JScript
public interface IAsyncInboundHandler extends IInboundHandler, IConnectionHandler,
    IDisposable

Remarks

Adapter developers will implement this interface when adapters need to listen or poll for data asynchronously.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IAsyncInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace
IInboundHandler


IAsyncInboundHandler Members
See Also Methods
[image]

Represents an interface for receiving data from a target system using asynchronous method calls. This class contains asynchronous variants of methods defined in the IInboundHandler.

The following tables list the members exposed by the IAsyncInboundHandler type.

Public Methods

 | Name | Description
public method | BeginTryReceive | Asynchronously tries to receive a message within a specified interval of time.
public method | BeginWaitForMessage | Asynchronously waits for a message from the target system.
public method | EndTryReceive | Ends the asynchronous TryReceive operation. It completes the specified asynchronous operation to receive an inbound message.
public method | EndWaitForMessage | Ends the asynchronous WaitForMessage operation.
public method | StartListener | Starts listening to messages with the provided WS-Addressing Actions. If none is specified, it listens to all or the default actions. (inherited from IInboundHandler)
public method | StopListener | Stops listening. (inherited from IInboundHandler)
public method | TryReceive | Tries to receive an inbound message from the target system. (inherited from IInboundHandler)
public method | WaitForMessage | Waits for an inbound WCF message from the target system. (inherited from IInboundHandler)
Top

See Also

Reference

IAsyncInboundHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
IInboundHandler


IAsyncInboundHandler Methods
[image]

Public Methods

 | Name | Description
public method | BeginTryReceive | Asynchronously tries to receive a message within a specified interval of time.
public method | BeginWaitForMessage | Asynchronously waits for a message from the target system.
public method | EndTryReceive | Ends the asynchronous TryReceive operation. It completes the specified asynchronous operation to receive an inbound message.
public method | EndWaitForMessage | Ends the asynchronous WaitForMessage operation.
public method | StartListener | Starts listening to messages with the provided WS-Addressing Actions. If none is specified, it listens to all or the default actions. (inherited from IInboundHandler)
public method | StopListener | Stops listening. (inherited from IInboundHandler)
public method | TryReceive | Tries to receive an inbound message from the target system. (inherited from IInboundHandler)
public method | WaitForMessage | Waits for an inbound WCF message from the target system. (inherited from IInboundHandler)

See Also

Reference

IAsyncInboundHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
IInboundHandler


IAsyncInboundHandler.BeginTryReceive Method
[image]

Asynchronously tries to receive a message within a specified interval of time.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAsyncInboundHandler
Dim timeout As TimeSpan
Dim callback As AsyncCallback
Dim state As Object
Dim returnValue As IAsyncResult

returnValue = instance.BeginTryReceive(timeout, callback, state)

Syntax

Visual Basic
Function BeginTryReceive ( _
    timeout As TimeSpan, _
    callback As AsyncCallback, _
    state As Object _
) As IAsyncResult
C#
IAsyncResult BeginTryReceive (
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
C++
IAsyncResult^ BeginTryReceive (
    TimeSpan timeout,
    AsyncCallback^ callback,
    Object^ state
)
J#
IAsyncResult BeginTryReceive (
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
JScript
function BeginTryReceive (
    timeout : TimeSpan,
    callback : AsyncCallback,
    state : Object
) : IAsyncResult

Parameters

timeout

The Timespan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

callback

The method to be called when the asynchronous operation is complete.

state

A user-provided object that distinguishes this particular asynchronous write request from other requests.

Return Value

An IAsyncResult that references the asynchronous Execute operation.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IAsyncInboundHandler Interface
IAsyncInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace
TryReceive


IAsyncInboundHandler.BeginWaitForMessage Method
[image]

Asynchronously waits for a message from the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAsyncInboundHandler
Dim timeout As TimeSpan
Dim callback As AsyncCallback
Dim state As Object
Dim returnValue As IAsyncResult

returnValue = instance.BeginWaitForMessage(timeout, callback, state)

Syntax

Visual Basic
Function BeginWaitForMessage ( _
    timeout As TimeSpan, _
    callback As AsyncCallback, _
    state As Object _
) As IAsyncResult
C#
IAsyncResult BeginWaitForMessage (
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
C++
IAsyncResult^ BeginWaitForMessage (
    TimeSpan timeout,
    AsyncCallback^ callback,
    Object^ state
)
J#
IAsyncResult BeginWaitForMessage (
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
JScript
function BeginWaitForMessage (
    timeout : TimeSpan,
    callback : AsyncCallback,
    state : Object
) : IAsyncResult

Parameters

Timeout

The TimeSpan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

Callback

The method to be called when the asynchronous operation is complete.

State

A user-provided object that distinguishes this particular asynchronous write request from other requests.

Return Value

An IAsyncResult that references the asynchronous Execute.

Remarks

Use the synchronous WaitForMessage method when it is acceptable for the current thread to be blocked while it waits for a request message to arrive in the queue. The thread is blocked up to the specified time-out.

This method receives notification, through a callback, of the identity of the event handler for the operation. The operation is not complete until either a request message becomes available in the channel or the time-out occurs.

Note
The operation returns false if the specified time-out is exceeded.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IAsyncInboundHandler Interface
IAsyncInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace
WaitForMessage


IAsyncInboundHandler.EndTryReceive Method
[image]

Ends the asynchronous TryReceive operation. It completes the specified asynchronous operation to receive an inbound message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAsyncInboundHandler
Dim result As IAsyncResult
Dim message As Message
Dim reply As IInboundReply
Dim returnValue As Boolean

returnValue = instance.EndTryReceive(result, message, reply)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId:="1#")> _
<SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId:="2#")> _
Function EndTryReceive ( _
    result As IAsyncResult, _
    <OutAttribute> ByRef message As Message, _
    <OutAttribute> ByRef reply As IInboundReply _
) As Boolean
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="1#")]
[SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="2#")]
bool EndTryReceive (
    IAsyncResult result,
    out Message message,
    out IInboundReply reply
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1021:AvoidOutParameters", MessageId=L"1#")]
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1021:AvoidOutParameters", MessageId=L"2#")]
bool EndTryReceive (
    IAsyncResult^ result,
    [OutAttribute] Message^% message,
    [OutAttribute] IInboundReply^% reply
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="1#") */
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="2#") */
boolean EndTryReceive (
    IAsyncResult result,
    /** @attribute OutAttribute() */ /** @ref */ Message message,
    /** @attribute OutAttribute() */ /** @ref */ IInboundReply reply
)
JScript

Parameters

result

A reference to the outstanding asynchronous I/O request.

Message

The Message received.

Reply

An IInboundReply object to be used to send the reply back to the target system, or to return null if the message received is for a one-way operation.

Return Value

true if a message is received before the time-out has been exceeded; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IAsyncInboundHandler Interface
IAsyncInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace
TryReceive


IAsyncInboundHandler.EndWaitForMessage Method
[image]

Ends the asynchronous WaitForMessage operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAsyncInboundHandler
Dim result As IAsyncResult
Dim returnValue As Boolean

returnValue = instance.EndWaitForMessage(result)

Syntax

Visual Basic
Function EndWaitForMessage ( _
    result As IAsyncResult _
) As Boolean
C#
bool EndWaitForMessage (
    IAsyncResult result
)
C++
bool EndWaitForMessage (
    IAsyncResult^ result
)
J#
boolean EndWaitForMessage (
    IAsyncResult result
)
JScript
function EndWaitForMessage (
    result : IAsyncResult
) : boolean

Parameters

result

A reference to the outstanding asynchronous I/O request.

Return Value

true if a message has arrived before the time-out has been exceeded; otherwise false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IAsyncInboundHandler Interface
IAsyncInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace
WaitForMessage


IAsyncOutboundHandler Interface
See Also Members
[image]

Represents an interface for sending data to a target system using asynchronous method calls.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAsyncOutboundHandler

Syntax

Visual Basic
Public Interface IAsyncOutboundHandler
    Inherits IOutboundHandler, IConnectionHandler, IDisposable
C#
public interface IAsyncOutboundHandler : IOutboundHandler, IConnectionHandler, IDisposable
C++
public interface class IAsyncOutboundHandler : IOutboundHandler, IConnectionHandler, IDisposable
J#
public interface IAsyncOutboundHandler extends IOutboundHandler, IConnectionHandler,
    IDisposable
JScript
public interface IAsyncOutboundHandler extends IOutboundHandler, IConnectionHandler,
    IDisposable

Remarks

You need to implement this interface when your adapter needs to asynchronously send data to a target system.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IAsyncOutboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IAsyncOutboundHandler Members
See Also Methods
[image]

Represents an interface for sending data to a target system using asynchronous method calls.

The following tables list the members exposed by the IAsyncOutboundHandler type.

Public Methods

 | Name | Description
public method | BeginExecute | Asynchronously sends the request message to the target system.
public method | EndExecute | Ends the asynchronous send operation.
public method | Execute | Executes the request Message by invoking the corresponding method on the target system and returns a response Message object. (inherited from IOutboundHandler)
Top

See Also

Reference

IAsyncOutboundHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace


IAsyncOutboundHandler Methods
[image]

Public Methods

 | Name | Description
public method | BeginExecute | Asynchronously sends the request message to the target system.
public method | EndExecute | Ends the asynchronous send operation.
public method | Execute | Executes the request Message by invoking the corresponding method on the target system and returns a response Message object. (inherited from IOutboundHandler)

See Also

Reference

IAsyncOutboundHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace


IAsyncOutboundHandler.BeginExecute Method
[image]

Asynchronously sends the request message to the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAsyncOutboundHandler
Dim message As Message
Dim timeout As TimeSpan
Dim callback As AsyncCallback
Dim state As Object
Dim returnValue As IAsyncResult

returnValue = instance.BeginExecute(message, timeout, callback, state)

Syntax

Visual Basic
Function BeginExecute ( _
    message As Message, _
    timeout As TimeSpan, _
    callback As AsyncCallback, _
    state As Object _
) As IAsyncResult
C#
IAsyncResult BeginExecute (
    Message message,
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
C++
IAsyncResult^ BeginExecute (
    Message^ message,
    TimeSpan timeout,
    AsyncCallback^ callback,
    Object^ state
)
J#
IAsyncResult BeginExecute (
    Message message,
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
JScript
function BeginExecute (
    message : Message,
    timeout : TimeSpan,
    callback : AsyncCallback,
    state : Object
) : IAsyncResult

Parameters

message

The WCF message to be sent.

timeout

The TimeSpan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

callback

The method to be called when the asynchronous operation is completed.

state

A user-provided object that distinguishes this particular asynchronous write request from other requests.

Return Value

An IAsyncResult object that references the asynchronous Execute.

Remarks

This method is responsible for parsing the WCF request message and for asynchronously calling the corresponding target system-specific logic for sending data.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IAsyncOutboundHandler Interface
IAsyncOutboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IAsyncOutboundHandler.EndExecute Method
[image]

Ends the asynchronous send operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IAsyncOutboundHandler
Dim result As IAsyncResult
Dim returnValue As Message

returnValue = instance.EndExecute(result)

Syntax

Visual Basic
Function EndExecute ( _
    result As IAsyncResult _
) As Message
C#
Message EndExecute (
    IAsyncResult result
)
C++
Message^ EndExecute (
    IAsyncResult^ result
)
J#
Message EndExecute (
    IAsyncResult result
)
JScript
function EndExecute (
    result : IAsyncResult
) : Message

Parameters

result

A reference to the outstanding asynchronous I/O request.

Return Value

The response Message object; null if no response.

Remarks

This method ends a pending asynchronous execution. If your adapter is performing a one-way send (there is no response message), this method should return null. Otherwise, it should return the WCF response message containing the response data from the target system.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IAsyncOutboundHandler Interface
IAsyncOutboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnection Interface
See Also Example Members
[image]

Represents an interface for a connection. You need to implement this interface to define the connection to the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnection

Syntax

Visual Basic
Public Interface IConnection
C#
public interface IConnection
C++
public interface class IConnection
J#
public interface IConnection
JScript
public interface IConnection

Example

The following code example shows a sample connection class for an adapter to a database system. It uses the SqlConnection object to manage the connectivity to the target system.

C# Copy Code
public class SimpleSqlAdapterConnection : IConnection
{
    private SimpleSqlAdapterConnectionFactory connectionFactory;
    private string connectionId;
    private SqlConnection dbConnection;

    /// <summary>
    /// Initializes a new instance of the SimpleSqlAdapterConnection class with the SimpleSqlAdapterConnectionFactory
    /// </summary>
    public SimpleSqlAdapterConnection(SimpleSqlAdapterConnectionFactory connectionFactory)
    {
        this.connectionFactory = connectionFactory;
        this.connectionId = Guid.NewGuid().ToString();
        dbConnection = new SqlConnection(connectionFactory.DBConnectionString);
    }

    public SqlConnection DBConnection
    {
        get { return dbConnection; }
    }

    /// <summary>
    /// Closes the connection to the target system
    /// </summary>
    public void Close(TimeSpan timeout)
    {
        dbConnection.Close();
    }

    /// <summary>
    /// Returns a value indicating whether the connection is still valid
    /// </summary>
    /// <returns>Boolean</returns>
    public bool IsValid(TimeSpan timeout)
    {
        ConnectionState state = dbConnection.State;
        if (ConnectionState.Broken || ConnectionState.Closed)
        {
            return false;
        }
        return true;
    }

    /// <summary>
    /// Opens the connection to the target system.
    /// </summary>
    public void Open(TimeSpan timeout)
    {
        dbConnection.Open();
    }

    /// <summary>
    /// Clears the context of the Connection. This method is called when the connection is set back to the connection pool
    /// </summary>
    public void ClearContext()
    {
        dbConnection.ResetStatistics();
    }

    /// <summary>
    /// Aborts the connection to the target system
    /// </summary>
    public void Abort()
    {
        dbConnection.Close();
    }

    /// <summary>
    /// Gets the Id of the Connection
    /// </summary>
    public String ConnectionId
    {
        get
        {
            return connectionId;
        }
    }
}

Remarks

The WCF LOB Adapter SDK is responsible for the life cycle of a connection object. The adapter developer must implement this interface to represent a connection to a target data source. With a client or server system, it is equivalent to a network connection to the server.

The WCF LOB Adapter SDK supports connection pooling. If the connection pooling is enabled, the underlying connection is returned back to the pool upon a connection Close. If the connection pooling is not enabled, the WCF LOB Adapter SDK closes the connection to the target system.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IConnection Members
Microsoft.ServiceModel.Channels.Common Namespace
ConnectionPoolSettings
ConnectionManagerSettings
IConnectionFactory


IConnection Members
See Also Methods Properties
[image]

Represents an interface for a connection. You need to implement this interface to define the connection to the target system.

The following tables list the members exposed by the IConnection type.

Public Properties

 | Name | Description
public property | ConnectionId | Gets the ID of the connection.
Top

Public Methods

 | Name | Description
public method | Abort | Aborts the connection to the target system.
public method | BuildHandler | Builds a new instance of the specified IConnectionHandler type.
public method | ClearContext | Clears the context of the connection. It is called when the connection is returned to the connection pool.
public method | Close | Closes the connection to the target system.
public method | IsValid | Returns a value that indicates whether the connection is still valid.
public method | Open | Opens the connection to the target system.
Top

See Also

Reference

IConnection Interface
Microsoft.ServiceModel.Channels.Common Namespace
ConnectionPoolSettings
ConnectionManagerSettings
IConnectionFactory


IConnection Methods
[image]

Public Methods

 | Name | Description
public method | Abort | Aborts the connection to the target system.
public method | BuildHandler | Builds a new instance of the specified IConnectionHandler type.
public method | ClearContext | Clears the context of the connection. It is called when the connection is returned to the connection pool.
public method | Close | Closes the connection to the target system.
public method | IsValid | Returns a value that indicates whether the connection is still valid.
public method | Open | Opens the connection to the target system.

See Also

Reference

IConnection Interface
Microsoft.ServiceModel.Channels.Common Namespace
ConnectionPoolSettings
ConnectionManagerSettings
IConnectionFactory


IConnection.Abort Method
See Also Example
[image]

Aborts the connection to the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnection

instance.Abort

Syntax

Visual Basic
Sub Abort
C#
void Abort ()
C++
void Abort ()
J#
void Abort ()
JScript
function Abort ()

Example

Suppose that you are building a SQL adapter and use the SqlConnection as the client object to manage connectivity with the target system. The following code example shows how to abort the connection to the target system.

C# Copy Code
private SqlConnection dbConnection

/// <summary>
/// Aborts the connection to the target system
/// </summary>
public void Abort()
{
    dbConnection.Close();
}

Remarks

Attempts to abort the pending connection operation. No exception will be thrown if this operation fails.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IConnection Interface
IConnection Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnection.BuildHandler Method
See Also Example
[image]

Builds a new instance of the specified IConnectionHandler type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnection
Dim metadataLookup As MetadataLookup
Dim returnValue As TConnectionHandler

returnValue = instance.BuildHandler(metadataLookup)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")> _
Function BuildHandler(Of TConnectionHandler As IConnectionHandler) ( _
    metadataLookup As MetadataLookup _
) As TConnectionHandler
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1004:GenericMethodsShouldProvideTypeParameter")]
TConnectionHandler BuildHandler<TConnectionHandler> (
    MetadataLookup metadataLookup
) where TConnectionHandler : IConnectionHandler
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1004:GenericMethodsShouldProvideTypeParameter")]
generic<typename TConnectionHandler> where TConnectionHandler : IConnectionHandler
TConnectionHandler BuildHandler (
    MetadataLookup^ metadataLookup
)
J#
JScript

Parameters

metadataLookup

The MetadataLookup to use to retrieve operation metadata for the messages.

Return Value

A new instance of the specified IConnectionHandler type.

Example

The following code example provides an example of the implementation of this method.

C# Copy Code
public TConnectionHandler BuildHandler<TConnectionHandler>(MetadataLookup metadataLookup)
     where TConnectionHandler : class, IConnectionHandler
{

    if (typeof(IOutboundHandler).IsAssignableFrom(typeof(TConnectionHandler)))
    {
        return new SimpleSqlAdapterOutboundHandler(this, metadataLookup) as TConnectionHandler;
    }
    if (typeof(IInboundHandler).IsAssignableFrom(typeof(TConnectionHandler)))
    {
        return new SimpleSqlAdapterInboundHandler(this, metadataLookup) as TConnectionHandler;
    }
    if (typeof(IMetadataResolverHandler).IsAssignableFrom(typeof(TConnectionHandler)))
    {
        return new SimpleSqlAdapterMetadataResolverHandler(this, metadataLookup) as TConnectionHandler;
    }
    if (typeof(IMetadataBrowseHandler).IsAssignableFrom(typeof(TConnectionHandler)))
    {
        return new SimpleSqlAdapterMetadataBrowseHandler(this, metadataLookup) as TConnectionHandler;
    }
    if (typeof(IMetadataSearchHandler).IsAssignableFrom(typeof(TConnectionHandler)))
    {
        return new SimpleSqlAdapterMetadataSearchHandler(this, metadataLookup) as TConnectionHandler;
    }

    return default(TConnectionHandler);
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IConnection Interface
IConnection Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnection.ClearContext Method
See Also Example
[image]

Clears the context of the connection. It is called when the connection is returned to the connection pool.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnection

instance.ClearContext

Syntax

Visual Basic
Sub ClearContext
C#
void ClearContext ()
C++
void ClearContext ()
J#
void ClearContext ()
JScript
function ClearContext ()

Example

Suppose that you are building a SQL adapter and use the SqlConnection as the client object to manage connectivity with the target system. The following code example shows how to clear the context of the connection.

C# Copy Code
private SqlConnection dbConnection

public void ClearContext()
{
    // reset the statistics, when the connection is being returned to the pool
    dbConnection.ResetStatistics();
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IConnection Interface
IConnection Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnection.Close Method
See Also Example
[image]

Closes the connection to the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnection
Dim timeout As TimeSpan

instance.Close(timeout)

Syntax

Visual Basic
Sub Close ( _
    timeout As TimeSpan _
)
C#
void Close (
    TimeSpan timeout
)
C++
void Close (
    TimeSpan timeout
)
J#
void Close (
    TimeSpan timeout
)
JScript
function Close (
    timeout : TimeSpan
)

Parameters

timeout

The Timespan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

Example

Suppose that you are building a SQL adapter and use the SqlConnection as the client object to manage connectivity with the target system. The following code example shows how to close the connection to the target system.

C# Copy Code
private SqlConnection dbConnection;

/// <summary>
/// Closes the connection to the target system
/// </summary>
public void Close(TimeSpan timeout)
{
    dbConnection.Close();
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IConnection Interface
IConnection Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnection.IsValid Method
See Also Example
[image]

Returns a value that indicates whether the connection is still valid.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnection
Dim timeout As TimeSpan
Dim returnValue As Boolean

returnValue = instance.IsValid(timeout)

Syntax

Visual Basic
Function IsValid ( _
    timeout As TimeSpan _
) As Boolean
C#
bool IsValid (
    TimeSpan timeout
)
C++
bool IsValid (
    TimeSpan timeout
)
J#
boolean IsValid (
    TimeSpan timeout
)
JScript
function IsValid (
    timeout : TimeSpan
) : boolean

Parameters

timeout

The Timespan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

Return Value

true if the connection is valid; otherwise, false.

Example

Suppose that you are building a SQL adapter and use the SqlConnection as the client object to manage connectivity with the target system. The following code example shows how to check whether the connection is still valid.

C# Copy Code
private SqlConnection dbConnection;

/// <summary>
/// Returns a value indicating whether the connection is still valid
/// </summary>
/// <returns>Boolean</returns>
public bool IsValid(TimeSpan timeout)
{
    ConnectionState state = dbConnection.State;
    if (ConnectionState.Broken || ConnectionState.Closed)
    {
        return false;
    }
    return true;
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IConnection Interface
IConnection Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnection.Open Method
See Also Example
[image]

Opens the connection to the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnection
Dim timeout As TimeSpan

instance.Open(timeout)

Syntax

Visual Basic
Sub Open ( _
    timeout As TimeSpan _
)
C#
void Open (
    TimeSpan timeout
)
C++
void Open (
    TimeSpan timeout
)
J#
void Open (
    TimeSpan timeout
)
JScript
function Open (
    timeout : TimeSpan
)

Parameters

Timeout

The Timespan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

Example

Suppose you are building a SQL adapter and use the SqlConnection as the client object to manage connectivity with the target system. The following code example shows how to open a connection to the target system.

C# Copy Code
private SqlConnection dbConnection;

/// <summary>
/// Opens the connection to the target system.
/// </summary>
public void Open(TimeSpan timeout)
{
    dbConnection.Open();
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IConnection Interface
IConnection Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnection Properties
[image]

Public Properties

 | Name | Description
public property | ConnectionId | Gets the ID of the connection.

See Also

Reference

IConnection Interface
Microsoft.ServiceModel.Channels.Common Namespace
ConnectionPoolSettings
ConnectionManagerSettings
IConnectionFactory


IConnection.ConnectionId Property
[image]

Gets the ID of the connection.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnection
Dim value As String

value = instance.ConnectionId

Syntax

Visual Basic
ReadOnly Property ConnectionId As String
C#
string ConnectionId { get; }
C++
property String^ ConnectionId {
    String^ get ();
}
J#
/** @property */
String get_ConnectionId ()
JScript
function get ConnectionId () : String

Property Value

A string containing the ID of the connection.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IConnection Interface
IConnection Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnectionFactory Interface
See Also Example Members
[image]

Represents an interface for a connection factory.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnectionFactory

Syntax

Visual Basic
Public Interface IConnectionFactory
C#
public interface IConnectionFactory
C++
public interface class IConnectionFactory
J#
public interface IConnectionFactory
JScript
public interface IConnectionFactory

Example

The following code example provides an implementation of the IConnectionFactory interface.

C# Copy Code
public class SimpleSqlAdapterConnectionFactory : IConnectionFactory
{
    // Stores the client credentials
    private ClientCredentials clientCredentials;
    // Stores the adapter class
    private SimpleSqlAdapter adapter;
    // Stores the connection string
    private string dbConnectionString;

    public string DBConnectionString
    {
        get { return dbConnectionString; }
    }

    public SimpleSqlAdapterConnectionFactory(ConnectionUri connectionUri
        , ClientCredentials clientCredentials
        , SimpleSqlAdapter adapter)
    {
        this.dbConnectionString = ((SimpleSqlAdapterConnectionUri)connectionUri).DBConnectionString;
        this.clientCredentials = clientCredentials;
        this.adapter = adapter;
    }
    public SimpleSqlAdapter Adapter
    {
        get
        {
            return this.adapter;
        }
    }

    public IConnection CreateConnection()
    {
        return new SimpleSqlAdapterConnection(this);
    }
}

Remarks

You need to implement this interface when defining the connection factory for the target system.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IConnectionFactory Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnectionFactory Members
See Also Methods
[image]

Represents an interface for a connection factory.

The following tables list the members exposed by the IConnectionFactory type.

Public Methods

 | Name | Description
public method | CreateConnection | Creates the connection to the target system.
Top

See Also

Reference

IConnectionFactory Interface
Microsoft.ServiceModel.Channels.Common Namespace


IConnectionFactory Methods
[image]

Public Methods

 | Name | Description
public method | CreateConnection | Creates the connection to the target system.

See Also

Reference

IConnectionFactory Interface
Microsoft.ServiceModel.Channels.Common Namespace


IConnectionFactory.CreateConnection Method
See Also Example
[image]

Creates the connection to the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnectionFactory
Dim returnValue As IConnection

returnValue = instance.CreateConnection

Syntax

Visual Basic
Function CreateConnection As IConnection
C#
IConnection CreateConnection ()
C++
IConnection^ CreateConnection ()
J#
IConnection CreateConnection ()
JScript
function CreateConnection () : IConnection

Return Value

An IConnection object that represents the adapter's system connection.

Example

The following code example provides an implementation of this method.

C# Copy Code
public IConnection CreateConnection()
{
    return new SimpleSqlAdapterConnection(this);
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IConnectionFactory Interface
IConnectionFactory Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnectionHandler Interface
See Also Members
[image]

Represents the base interface for the metadata and message exchange connection handlers.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IConnectionHandler

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1040:AvoidEmptyInterfaces")> _
Public Interface IConnectionHandler
    Inherits IDisposable
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1040:AvoidEmptyInterfaces")]
public interface IConnectionHandler : IDisposable
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1040:AvoidEmptyInterfaces")]
public interface class IConnectionHandler : IDisposable
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1040:AvoidEmptyInterfaces") */
public interface IConnectionHandler extends IDisposable
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1040:AvoidEmptyInterfaces")
public interface IConnectionHandler extends IDisposable

Remarks

This interface, while public, is reserved for internal use. See following interfaces for connection-oriented metadata handlers.

  • IMetadataBrowseHandler

  • IMetadataSearchHandler

  • IMetadataResolverHandler

See following interfaces for connection-oriented message exchange handlers:

  • IOutboundHandler

  • IAsyncOutboundHandler

  • IInboundHandler

  • IAsyncInboundHandler

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IConnectionHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IConnectionHandler Members
[image]

Represents the base interface for the metadata and message exchange connection handlers.

The following tables list the members exposed by the IConnectionHandler type.

See Also

Reference

IConnectionHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace


IInboundHandler Interface
See Also Members
[image]

Represents an interface for handling inbound requests from the target line-of-business (LOB) system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundHandler

Syntax

Visual Basic
Public Interface IInboundHandler
    Inherits IConnectionHandler, IDisposable
C#
public interface IInboundHandler : IConnectionHandler, IDisposable
C++
public interface class IInboundHandler : IConnectionHandler, IDisposable
J#
public interface IInboundHandler extends IConnectionHandler, IDisposable
JScript
public interface IInboundHandler extends IConnectionHandler, IDisposable

Remarks

You need to implement this interface when your adapter must listen or poll for data. It typically uses the "pull" model to receive messages by using TryReceive and then waits for a message to arrive.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace
IAsyncInboundHandler
IReplyChannel
IInputChannel


IInboundHandler Members
See Also Methods
[image]

Represents an interface for handling inbound requests from the target line-of-business (LOB) system.

The following tables list the members exposed by the IInboundHandler type.

Public Methods

 | Name | Description
public method | StartListener | Starts listening to messages with the provided WS-Addressing Actions. If none is specified, it listens to all or the default actions.
public method | StopListener | Stops listening.
public method | TryReceive | Tries to receive an inbound message from the target system.
public method | WaitForMessage | Waits for an inbound WCF message from the target system.
Top

See Also

Reference

IInboundHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
IAsyncInboundHandler
IReplyChannel
IInputChannel


IInboundHandler Methods
[image]

Public Methods

 | Name | Description
public method | StartListener | Starts listening to messages with the provided WS-Addressing Actions. If none is specified, it listens to all or the default actions.
public method | StopListener | Stops listening.
public method | TryReceive | Tries to receive an inbound message from the target system.
public method | WaitForMessage | Waits for an inbound WCF message from the target system.

See Also

Reference

IInboundHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
IAsyncInboundHandler
IReplyChannel
IInputChannel


IInboundHandler.StartListener Method
See Also Example
[image]

Starts listening to messages with the provided WS-Addressing Actions. If none is specified, it listens to all or the default actions.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundHandler
Dim actions As String()
Dim timeout As TimeSpan

instance.StartListener(actions, timeout)

Syntax

Visual Basic
Sub StartListener ( _
    actions As String(), _
    timeout As TimeSpan _
)
C#
void StartListener (
    string[] actions,
    TimeSpan timeout
)
C++
void StartListener (
    array<String^>^ actions,
    TimeSpan timeout
)
J#
void StartListener (
    String[] actions,
    TimeSpan timeout
)
JScript
function StartListener (
    actions : String[],
    timeout : TimeSpan
)

Parameters

actions

The WS-Addressing Actions to listen to.

timeout

The Timespan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

Example

The following code example demonstrates an implementation of the StartListener method. It shows how an adapter makes use of the actions. In this case, the adapter monitors a particular file system, and it will only do that for action = "Hello/OnReceiveGreeting".

C# Copy Code
public class HelloWorldAdapterInboundHandler : IInboundHandler
{
    // internal queue for dispatching the messages
    private Queue<Message> inboundQueue;
    // use the file system watcher as a trigger
    private FileSystemWatcher inboundWatcher;

. . .

    public void StartListener(string[] actions, TimeSpan timeout)
    {
        try
        {
            foreach (string action in actions)
            {
                if ("Hello/OnReceiveGreeting".Equals(action))
                {
                    if (inboundWatcher == null)
                    {
                        inboundWatcher = new FileSystemWatcher(path);
                        // Set the callback for the event - when a *.txt is copied into the folder being monitored
                        inboundWatcher.Created += new FileSystemEventHandler(FileMonitor_Event_Created);
                        // Begin monitoring
                        inboundWatcher.EnableRaisingEvents = true;
                        // Look for files with extension
                        inboundWatcher.Filter = Connection.ConnectionFactory.Adapter.Inbound_FileFilter;
                    }
                }
            }
        }
        catch (System.ArgumentException e)
        {

            HelloWorldAdapterUtilities.Trace.Trace(TraceEventType.Error, "HelloWorldAdapterInboundHandler::StartListener", "Error starting the listner.");
            throw new AdapterException(e.Message);
        }
    }
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IInboundHandler Interface
IInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IInboundHandler.StopListener Method
See Also Example
[image]

Stops listening.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundHandler
Dim timeout As TimeSpan

instance.StopListener(timeout)

Syntax

Visual Basic
Sub StopListener ( _
    timeout As TimeSpan _
)
C#
void StopListener (
    TimeSpan timeout
)
C++
void StopListener (
    TimeSpan timeout
)
J#
void StopListener (
    TimeSpan timeout
)
JScript
function StopListener (
    timeout : TimeSpan
)

Parameters

timeout

The TimeSpan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

Example

The following code example shows an implementation of the StopListener method.

C# Copy Code
public class HelloWorldAdapterInboundHandler : IInboundHandler
{
    // internal queue for dispatching the messages
    private Queue<Message> inboundQueue;
    // use the file system watcher as a trigger
    private FileSystemWatcher inboundWatcher;

    public void StopListener(TimeSpan timeout)
    {
        if (inboundWatcher != null)
        {
            // End monitoring the file system
            HelloWorldAdapterUtilities.Trace.Trace(TraceEventType.Information, "HelloWorldAdapterInboundHandler::StopListener", "Stopping the listener for " + inboundWatcher);
            inboundWatcher.EnableRaisingEvents = false;
            inboundWatcher = null;
        }
        inboundQueue.Clear();
        inboundQueue = null;
    }
}

Remarks

Closes all the resources that were created during the StartListener method.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IInboundHandler Interface
IInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IInboundHandler.TryReceive Method
See Also Example
[image]

Tries to receive an inbound message from the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundHandler
Dim timeout As TimeSpan
Dim message As Message
Dim reply As IInboundReply
Dim returnValue As Boolean

returnValue = instance.TryReceive(timeout, message, reply)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId:="1#")> _
Function TryReceive ( _
    timeout As TimeSpan, _
    <OutAttribute> ByRef message As Message, _
    <OutAttribute> ByRef reply As IInboundReply _
) As Boolean
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="1#")]
bool TryReceive (
    TimeSpan timeout,
    out Message message,
    out IInboundReply reply
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1021:AvoidOutParameters", MessageId=L"1#")]
bool TryReceive (
    TimeSpan timeout,
    [OutAttribute] Message^% message,
    [OutAttribute] IInboundReply^% reply
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="1#") */
boolean TryReceive (
    TimeSpan timeout,
    /** @attribute OutAttribute() */ /** @ref */ Message message,
    /** @attribute OutAttribute() */ /** @ref */ IInboundReply reply
)
JScript

Parameters

timeout

The specified TimeSpan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

message

The Message received.

reply

The IInboundReply object to be used to send the reply back; return null if the message received is for a one-way operation.

Note
BizTalk WCF adapter doesn't support true one-way operations. In order for the adapter to be supported within BizTalk Server, subclass from InboundReply and leave the Reply and Abort methods empty.

Return Value

true if the message is received before time-out has been exceeded; otherwise, false.

Example

The following code example provides an implementation of the TryReceive method.

C# Copy Code
public class HelloWorldAdapterInboundHandler : HelloWorldAdapterHandlerBase, IInboundHandler
{
    // internal queue for dispatching the messages
    private Queue<Message> inboundQueue;
. . .

    public bool TryReceive(TimeSpan timeout, out Message outMessage, out IInboundReply reply)
    {
        // set reply=null for one-way inbound operations
        reply = new HelloAdapterInboundReply();
        if (inboundQueue.Count != 0)
        {
            outMessage = inboundQueue.Dequeue();
            if (outMessage != null)
            {
                return true;
            }
        }
        return false;
    }
}

Remarks

Instead of indicating the failure to receive through an exception, TryReceive has a Boolean return value that indicates whether the operation succeeded. A successful attempt to receive provides you with the message as normal. If there is some way for you to recover from a lack of messages, TryReceive allows you to avoid the expense of throwing and catching the TimeoutException. Other exceptions can still be thrown such as errors occurred in receiving/processing of messages.

Use TryReceive when it is acceptable for the current thread to be blocked while it waits for the request message to arrive in the queue. The thread is blocked up to the specified time-out. If you need the application processing to continue without waiting, use the asynchronous BeginTryReceive method.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IInboundHandler Interface
IInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IInboundHandler.WaitForMessage Method
[image]

Waits for an inbound WCF message from the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundHandler
Dim timeout As TimeSpan
Dim returnValue As Boolean

returnValue = instance.WaitForMessage(timeout)

Syntax

Visual Basic
Function WaitForMessage ( _
    timeout As TimeSpan _
) As Boolean
C#
bool WaitForMessage (
    TimeSpan timeout
)
C++
bool WaitForMessage (
    TimeSpan timeout
)
J#
boolean WaitForMessage (
    TimeSpan timeout
)
JScript
function WaitForMessage (
    timeout : TimeSpan
) : boolean

Parameters

timeout

The specified TimeSpan that specifies how long the operation has to complete before timing out and throwing a TimeoutException.

Return Value

true if a message has arrived before the time-out has been exceeded; otherwise false.

Remarks

Calling the WaitForMessage method does not result in a request message being received or processed in any way. The BeginWaitForMessage exists primarily for transacted scenarios where the user wants to receive the message using a transaction.

Users can call BeginWaitForMessage and specify the time-out (even infinite); then when a message arrives they can open the transaction, call TryReceive and ensure that they can get the message back before the transaction expires.

This WaitForMessage is a type of Receive and is essentially a peek operation. Like TryReceive operation, this method uses a Boolean return value to indicate the success of the method. However, WaitForMessage never returns a message. It simply means that if perform a Receive operation, you would see the message arrive before the time-out expires.

Waiting for a message can be used to defer work until a message is ready for processing. An example is where a message is received inside a transaction. If you have a loop checking for messages to arrive, and you just called TryReceive, you would need to start the transaction every time through the loop in case one of the messages arrived. Each time a receive attempt failed, the transaction would have to be canceled. With this method, however, you can instead peek for messages and then start the transaction only when the message is most likely to be there.

Use WaitForMessage when it is acceptable for the current thread to be blocked while it waits for a message to arrive in the queue. The thread is blocked up to the specified time-out. If you need the application processing to continue without waiting, use the asynchronous BeginWaitForMessage method.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IInboundHandler Interface
IInboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IInboundReply Interface
See Also Example Members
[image]

Used to provide a reply that is correlated to an incoming request.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundReply

Syntax

Visual Basic
Public Interface IInboundReply
    Inherits IDisposable
C#
public interface IInboundReply : IDisposable
C++
public interface class IInboundReply : IDisposable
J#
public interface IInboundReply extends IDisposable
JScript
public interface IInboundReply extends IDisposable

Example

See InboundReply for an example.

Remarks

The adapter developer sets the out parameter 'reply' in the TryReceive method to an instance of class that implements this interface.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IInboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace
InboundReply
IInboundHandler


IInboundReply Members
See Also Methods
[image]

Used to provide a reply that is correlated to an incoming request.

The following tables list the members exposed by the IInboundReply type.

Public Methods

 | Name | Description
public method | Abort | Aborts processing the request associated with the context.
public method | BeginReply | Begins an asynchronous operation to reply to the request message.
public method | EndReply | Completes an asynchronous operation to reply to a request message.
public method | Reply | Replies to a request message.
Top

See Also

Reference

IInboundReply Interface
Microsoft.ServiceModel.Channels.Common Namespace
InboundReply
IInboundHandler


IInboundReply Methods
[image]

Public Methods

 | Name | Description
public method | Abort | Aborts processing the request associated with the context.
public method | BeginReply | Begins an asynchronous operation to reply to the request message.
public method | EndReply | Completes an asynchronous operation to reply to a request message.
public method | Reply | Replies to a request message.

See Also

Reference

IInboundReply Interface
Microsoft.ServiceModel.Channels.Common Namespace
InboundReply
IInboundHandler


IInboundReply.Abort Method
[image]

Aborts processing the request associated with the context.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundReply

instance.Abort

Syntax

Visual Basic
Sub Abort
C#
void Abort ()
C++
void Abort ()
J#
void Abort ()
JScript
function Abort ()

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IInboundReply Interface
IInboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


IInboundReply.BeginReply Method
[image]

Begins an asynchronous operation to reply to the request message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundReply
Dim message As Message
Dim timeout As TimeSpan
Dim callback As AsyncCallback
Dim state As Object
Dim returnValue As IAsyncResult

returnValue = instance.BeginReply(message, timeout, callback, state)

Syntax

Visual Basic
Function BeginReply ( _
    message As Message, _
    timeout As TimeSpan, _
    callback As AsyncCallback, _
    state As Object _
) As IAsyncResult
C#
IAsyncResult BeginReply (
    Message message,
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
C++
IAsyncResult^ BeginReply (
    Message^ message,
    TimeSpan timeout,
    AsyncCallback^ callback,
    Object^ state
)
J#
IAsyncResult BeginReply (
    Message message,
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
JScript
function BeginReply (
    message : Message,
    timeout : TimeSpan,
    callback : AsyncCallback,
    state : Object
) : IAsyncResult

Parameters

message

The incoming Message that contains the request.

timeout

The TimeSpan that specifies the interval of time to wait for the reply to a request.

callback

The AsyncCallback delegate that receives the notification of the asynchronous reply operation completion.

state

The Object specified by the application that contains state information associated with the asynchronous reply operation.

Return Value

The IAsyncResult that references the asynchronous reply operation.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IInboundReply Interface
IInboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


IInboundReply.EndReply Method
[image]

Completes an asynchronous operation to reply to a request message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundReply
Dim result As IAsyncResult

instance.EndReply(result)

Syntax

Visual Basic
Sub EndReply ( _
    result As IAsyncResult _
)
C#
void EndReply (
    IAsyncResult result
)
C++
void EndReply (
    IAsyncResult^ result
)
J#
void EndReply (
    IAsyncResult result
)
JScript
function EndReply (
    result : IAsyncResult
)

Parameters

result

The IAsyncResult object returned by a call to one of the

BeginReply

methods.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IInboundReply Interface
IInboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


IInboundReply.Reply Method
See Also Example
[image]

Replies to a request message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IInboundReply
Dim message As Message
Dim timeout As TimeSpan

instance.Reply(message, timeout)

Syntax

Visual Basic
Sub Reply ( _
    message As Message, _
    timeout As TimeSpan _
)
C#
void Reply (
    Message message,
    TimeSpan timeout
)
C++
void Reply (
    Message^ message,
    TimeSpan timeout
)
J#
void Reply (
    Message message,
    TimeSpan timeout
)
JScript
function Reply (
    message : Message,
    timeout : TimeSpan
)

Parameters

message

The incoming Message object that contains the request.

timeout

The TimeSpan object that specifies the interval of time to wait for the reply to a request.

Example

For an example on how to implement this method, see InboundReply.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IInboundReply Interface
IInboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


IMetadataBrowseHandler Interface
See Also Example Members
[image]

Represents an interface for performing a connection-based browse for metadata from the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataBrowseHandler

Syntax

Visual Basic
Public Interface IMetadataBrowseHandler
    Inherits IConnectionHandler, IDisposable
C#
public interface IMetadataBrowseHandler : IConnectionHandler, IDisposable
C++
public interface class IMetadataBrowseHandler : IConnectionHandler, IDisposable
J#
public interface IMetadataBrowseHandler extends IConnectionHandler, IDisposable
JScript
public interface IMetadataBrowseHandler extends IConnectionHandler, IDisposable

Example

Suppose you are creating an adapter to SQL Server and want to enable browsing of the available stored procedures in the database as operations. The following code example shows you how to accomplish that.

C# Copy Code
public MetadataRetrievalNode[] Browse(string nodeId
    , int childStartIndex
    , int maxChildNodes, TimeSpan timeout)
{
    List<MetadataRetrievalNode> nodes = new List<MetadataRetrievalNode>(5);
    // Root Node
    if (MetadataRetrievalNode.Root.NodeId.Equals(nodeId))
    {
        // Create Stored Procedures Category Node
        MetadataRetrievalNode spCategory = new MetadataRetrievalNode("/StoredProcedures");
        spCategory.Description = "Contains stored procedures from the database";
        spCategory.Direction = MetadataRetrievalNodeDirections.Outbound;
        spCategory.DisplayName = "Database Stored Procedures";
        spCategory.IsOperation = false;

        // Add categories to the root node
        nodes.Add(spCategory);
    }
    else
    {
        switch (nodeId)
        {
            case "/StoredProcedures":
                SqlCommand cmd = new SqlCommand();
                cmd.CommandText = "select name from sysobjects" +
                                  " where type='P' order by name asc";
                cmd.CommandType = CommandType.Text;
                cmd.Connection = this.Connection.DBConnection;
                try
                {
                    SqlDataReader reader = cmd.ExecuteReader();
                    while (reader.Read())
                    {
                        MetadataRetrievalNode node = new MetadataRetrievalNode(reader["name"].ToString());
                        node.DisplayName = reader["name"].ToString();
                        node.IsOperation = true;
                        node.Direction = MetadataRetrievalNodeDirections.Outbound;
                        nodes.Add(node);
                    }
                }
                catch (Exception exc)
                {
                    throw new AdapterException("Unable to retrieve stored procedures in the browse handler.", exc);
                }
                break;
        }
    }
    return nodes.ToArray();
}

The following code example shows browsing the previous nodes from a console application. This example will help you with quick debugging and ensuring that the nodes are being returned as expected.

C# Copy Code
using System;
using System.Collections.Generic;
using System.Text;
using My.Samples.CodeSnippets;
using System.ServiceModel;
using Microsoft.ServiceModel.Channels;

namespace CodeSnippet_Browse
{
    class Program
    {
        static void Main(string[] args)
        {
            // create the binding
            SampleAdapterBinding binding = new SampleAdapterBinding();
            // create the endpoint address
            EndpointAddress address = new EndpointAddress("sample://localhost:100/DB2OLEDB/BizTalkMgmtDb?Protocol=TCPIP&Driver=Test");
            // create metadata retrieval client
            MetadataRetrievalClient metadataProxy = new MetadataRetrievalClient(binding, address);
            // Show the nodes on the console
            Console.WriteLine("Browsing " + binding.Name + "...\n");
            // Browse the nodes
            MetadataRetrievalNode[] nodes = OutputMetadataTree(metadataProxy, null, 0);
            // close the client
            metadataProxy.Close();        }

        // This method browses the adapter for category and operation nodes
        // and displays them on the conosole.
        private static MetadataRetrievalNode[] OutputMetadataTree(IMetadataRetrievalContract proxy, MetadataRetrievalNode node, int depth)
        {
            for (int i = 0; i < depth; i++)
            {
                if (i < depth - 1)
                {
                    Console.Write("   ");
                }
                else
                {
                    Console.Write("└──");
                }
            }
            Console.WriteLine(node == null ? "Root" : node.NodeId + " (" + node.Direction + ")" );

            MetadataRetrievalNode[] rootNodes = proxy.Browse(node == null ? MetadataRetrievalNode.Root.NodeId : node.NodeId, 0, 100);

            foreach (MetadataRetrievalNode childNode in rootNodes)
            {
                OutputMetadataTree(proxy, childNode, depth + 1);
            }
            return rootNodes;
        }
    }
}

Remarks

You need to implement this interface when your adapter performs a connection-based browse for metadata from the target system. The adapter consumers use the Add Adapter Service Reference Visual Studio Plug-in and the Consume Adapter Service BizTalk Project Add-in tools to browse the metadata.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IMetadataBrowseHandler Members
Microsoft.ServiceModel.Channels.Common Namespace
MetadataRetrievalClient
MetadataRetrievalNode
IConnectionHandler


IMetadataBrowseHandler Members
See Also Methods
[image]

Represents an interface for performing a connection-based browse for metadata from the target system.

The following tables list the members exposed by the IMetadataBrowseHandler type.

Public Methods

 | Name | Description
public method | Browse | Retrieves an array of MetadataRetrievalNode objects from the target system.
Top

See Also

Reference

IMetadataBrowseHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
MetadataRetrievalClient
MetadataRetrievalNode
IConnectionHandler


IMetadataBrowseHandler Methods
[image]

Public Methods

 | Name | Description
public method | Browse | Retrieves an array of MetadataRetrievalNode objects from the target system.

See Also

Reference

IMetadataBrowseHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
MetadataRetrievalClient
MetadataRetrievalNode
IConnectionHandler


IMetadataBrowseHandler.Browse Method
See Also Example
[image]

Retrieves an array of MetadataRetrievalNode objects from the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataBrowseHandler
Dim nodeId As String
Dim childStartIndex As Integer
Dim maxChildNodes As Integer
Dim timeout As TimeSpan
Dim returnValue As MetadataRetrievalNode()

returnValue = instance.Browse(nodeId, childStartIndex, maxChildNodes, timeout)

Syntax

Visual Basic
Function Browse ( _
    nodeId As String, _
    childStartIndex As Integer, _
    maxChildNodes As Integer, _
    timeout As TimeSpan _
) As MetadataRetrievalNode()
C#
MetadataRetrievalNode[] Browse (
    string nodeId,
    int childStartIndex,
    int maxChildNodes,
    TimeSpan timeout
)
C++
array<MetadataRetrievalNode^>^ Browse (
    String^ nodeId,
    int childStartIndex,
    int maxChildNodes,
    TimeSpan timeout
)
J#
MetadataRetrievalNode[] Browse (
    String nodeId,
    int childStartIndex,
    int maxChildNodes,
    TimeSpan timeout
)
JScript
function Browse (
    nodeId : String,
    childStartIndex : int,
    maxChildNodes : int,
    timeout : TimeSpan
) : MetadataRetrievalNode[]

Parameters

nodeId

Each item in the hierarchy of the metadata explorer has a nodeId. This specified nodeId can be a category or an operation. The category can have sub-categories. Ensure a unique nodeId is assigned to each item.

Note
If null or an empty string (""), operations will be retrieved from the root node ("/") by default.

childStartIndex

The index of the first child to return.

maxChildNodes

The maximum number of children to return.

timeout

The maximum time to wait for completion of the operation.

Return Value

An array of MetadataRetrievalNode objects that represent the child nodes for the supplied node satisfying the parameters' conditions.

Example

The following code implements the Browse method to browse a system with the following two categories, Calculator Category and Echo Category. It uses MetadataRetrievalNode objects to store each category's operation nodes.

Calculator Category

Operation Name | Operation Details | Operation Direction
Add | double Add(double n1, double n2) | Outbound

Echo Category

Operation Name | Operation Details | Operation Direction
EchoString | string[] EchoString(string name) | Outbound
EchoComplexObject | MyEchoObject[] EchoComplexObject(MyEchoObject complexObject) | Outbound
OnReceiveGreeting | void OnReceiveGreeting(Greeting greeting) | Inbound
C# Copy Code
#region Using Directives
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.ServiceModel.Channels;

using Microsoft.ServiceModel.Channels.Common;
#endregion

namespace My.Samples.CodeSnippets
{
    public class SampleAdapterMetadataBrowseHandler : SampleAdapterHandlerBase, IMetadataBrowseHandler
    {
        /// <summary>
        /// Initializes a new instance of the SampleAdapterMetadataBrowseHandler class
        /// </summary>
        public SampleAdapterMetadataBrowseHandler(SampleAdapterConnection connection
            , MetadataLookup metadataLookup)
            : base(connection, metadataLookup)
        {
        }

        #region IMetadataBrowseHandler Members

        /// <summary>
        /// Retrieves an array of MetadataRetrievalNodes from the target system.
        /// The browse will return nodes starting from the childStartIndex in the path provided in absoluteName, and the number of nodes returned is limited by maxChildNodes.
        /// The method should complete within the specified timespan or throw a timeout exception.
        /// If absoluteName is null or an empty string, return nodes starting from the root + childStartIndex.
        /// If childStartIndex is zero, then return starting at the node indicated by absoluteName (or the root node if absoluteName is null or empty).
        /// </summary>
        public MetadataRetrievalNode[] Browse(string nodeId
            , int childStartIndex
            , int maxChildNodes, TimeSpan timeout)
        {
            List<MetadataRetrievalNode> nodes = new List<MetadataRetrievalNode>(5);
            // Root Node
            if (MetadataRetrievalNode.Root.NodeId.Equals(nodeId))
            {
                // Create Calculator Category Node
                MetadataRetrievalNode calculatorCategory = new MetadataRetrievalNode("/Calculator");
                calculatorCategory.Description = "Contains calculator operations";
                calculatorCategory.Direction = MetadataRetrievalNodeDirections.Outbound;
                calculatorCategory.DisplayName = "Calculator Category";
                calculatorCategory.IsOperation = false;

                // Create Echo Category Node
                MetadataRetrievalNode echoCategory = new MetadataRetrievalNode("/Echo");
                echoCategory.Description = "Contains echo operations";
                echoCategory.Direction = MetadataRetrievalNodeDirections.Inbound | MetadataRetrievalNodeDirections.Outbound;
                echoCategory.DisplayName = "Echo Category";
                echoCategory.IsOperation = false;

                // Add categories to the root node
                nodes.Add(calculatorCategory);
                nodes.Add(echoCategory);
            }
            else
            {
                switch (nodeId)
                {
                    case "/Calculator":
                        // Create Add Operation Node
                        MetadataRetrievalNode addOpNode = new MetadataRetrievalNode("/Calculator/Add");
                        addOpNode.Description = "This operation adds two numbers.";
                        addOpNode.Direction = MetadataRetrievalNodeDirections.Outbound;
                        addOpNode.DisplayName = "Add";
                        addOpNode.IsOperation = true;

                        // Add operations to this category
                        nodes.Add(addOpNode);

                        break;
                    case "/Echo":
                        // Create EchoString Operation Node
                        MetadataRetrievalNode eStringOpNode = new MetadataRetrievalNode("/Echo/EchoString");
                        eStringOpNode.Description = "This operation echoes a string an X number of times.";
                        eStringOpNode.Direction = MetadataRetrievalNodeDirections.Outbound;
                        eStringOpNode.DisplayName = "EchoString";
                        eStringOpNode.IsOperation = true;

                        // Create EchoComplexObject Operation Node
                        MetadataRetrievalNode eComplexOpNode = new MetadataRetrievalNode("/Echo/EchoComplexObject");
                        eComplexOpNode.Description = "This operation echoes a complex object an X number of times.";
                        eComplexOpNode.Direction = MetadataRetrievalNodeDirections.Outbound;
                        eComplexOpNode.DisplayName = "EchoComplexObject";
                        eComplexOpNode.IsOperation = true;

                        // Create OnReceiveGreeting Operation Node
                        MetadataRetrievalNode inboundOpNode = new MetadataRetrievalNode("/Echo/OnReceiveGreeting");
                        inboundOpNode.Description = "This operation receives a greeting from the back-end application.";
                        inboundOpNode.Direction = MetadataRetrievalNodeDirections.Inbound;
                        inboundOpNode.DisplayName = "OnReceiveGreeting";
                        inboundOpNode.IsOperation = true;

                        // Add operations to this category
                        nodes.Add(eStringOpNode);
                        nodes.Add(eComplexOpNode);
                        nodes.Add(inboundOpNode);

                        break;
                }
            }
            return nodes.ToArray();
        }
        #endregion IMetadataBrowseHandler Members
    }
}

Remarks

This method is often used to request the child operations of a given node. The given node can be the root category node (MetadataRetrievalNode.Root.NodeId) or a sub-category node.

For example, if a category node called "/Echo" consists of three operations (A,B,C), the Browse method will return an array of MetadataRetrievalNode objects containing A, B, and C. The starting node as well as the maximum number of node settings can affect which values are returned.

The node ID for the operation node is used by the WSDL Builder to resolve the metadata. The ResolveOperationMetadata and ResolveTypeMetadata will get this operation from the metadata cache using MetadataLookup, or will actually resolve it from the line-of-business system.

Note
The IMetadataBrowseHandler implementation returns the category and operation nodes to the adapter consumer. The adapter consumer must first select a few operation nodes, pass those operation nodes to the IMetadataResolverHandler implementation to obtain the WCF contract for the selected operations.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IMetadataBrowseHandler Interface
IMetadataBrowseHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IMetadataResolverHandler Interface
See Also Example Members
[image]

Represents an interface for retrieving operation and type metadata from the target system. It takes in an absolute node identifier and provides its metadata using the WCF LOB Adapter SDK’s metadata object model. This metadata object model is used by the dynamic contract builder to generate the WCF contract.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataResolverHandler

Syntax

Visual Basic
Public Interface IMetadataResolverHandler
    Inherits IConnectionHandler, IDisposable
C#
public interface IMetadataResolverHandler : IConnectionHandler, IDisposable
C++
public interface class IMetadataResolverHandler : IConnectionHandler, IDisposable
J#
public interface IMetadataResolverHandler extends IConnectionHandler, IDisposable
JScript
public interface IMetadataResolverHandler extends IConnectionHandler, IDisposable

Example

You can use GetMetadata to view the outcome of a ResolveOperationMetadata and ResolveTypeMetadata operations during development process.

Alternatively, the WCF LOB Adapter SDK also supports retrieving metadata using the svcutil.exe tool provided with WCF as follows.

To retrieve the WSDL for a set of given operation identifiers:

Copy Code
SvcUtil.exe /target:metadata "sample://myconnectionuri&op={OPERATION_ID_1}&op={OPERATION_ID_2}"

To retrieve the common language runtime (CLR) object for a set of given operation identifiers:

Copy Code
SvcUtil.exe /target:code /out:MyContract.cs "sample://myconnectionuri&op={OPERATION_ID_1}&op={OPERATION_ID_2}"

The following are some examples that show implementing some key methods of IMetadataResolverHandler.

Example 1: Resolving operation metadata that uses simple types

Consider an operation called "Add" that takes in two parameters of type "double" and returns a result of type "double". The following is the code example for the "Add" operation.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Calculator/Add":
            // Syntax: double Add(double n1, double n2)
            opMetadata.DisplayName = "Add";
            // Create Parameters
            OperationParameter n1 = new OperationParameter("n1", OperationParameterDirection.In, QualifiedType.DoubleType, false);
            OperationParameter n2 = new OperationParameter("n2", OperationParameterDirection.In, QualifiedType.DoubleType, false);
            opMetadata.Parameters.Add(n1);
            opMetadata.Parameters.Add(n2);
            // Create Result
            opMetadata.OperationResult = new OperationResult(QualifiedType.DoubleType, false);
            break;

        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

Example 2 - Resolving operation metadata that uses simple types with restrictions

In XML Schema, restrictions can be used to define acceptable values for XML elements. For example, you may want to define a type called "Age" which cannot be less than 0 or greater than 120. Or you may want to define enumeration values for a type called "Car" with values such as Car. The following example shows how to resolve a type with restrictions for use within operation metadata.

Consider the following operation that accepts three parameters, name, gender, and age. The parameters "gender" and "age" have restrictions.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Sample/AddPerson":
            // bool AddPerson(string name, string gender, int age)
            opMetadata.DisplayName = "AddPerson";
            // create name parameter
            OperationParameter parmFullName = new OperationParameter("name", OperationParameterDirection.In, QualifiedType.StringType, false);
            // create gender parameter
            SimpleQualifiedType genderSQT = new SimpleQualifiedType(XmlTypeCode.String);
            XmlSchemaPatternFacet genderFacet = new XmlSchemaPatternFacet();
            genderFacet.Value = @"male|female";
            genderSQT.XmlSchemaFacets.Add(genderFacet);
            OperationParameter parmGender = new OperationParameter("gender", OperationParameterDirection.In, genderSQT, false);
            // create age parameter
            SimpleQualifiedType ageSQT = new SimpleQualifiedType(XmlTypeCode.Int);
            XmlSchemaMinInclusiveFacet ageMinFacet = new XmlSchemaMinInclusiveFacet();
            ageMinFacet.Value = "0";
            XmlSchemaMaxInclusiveFacet ageMaxFacet = new XmlSchemaMaxInclusiveFacet();
            ageMaxFacet.Value = "120";
            ageSQT.XmlSchemaFacets.Add(ageMinFacet);
            ageSQT.XmlSchemaFacets.Add(ageMaxFacet);
            OperationParameter parmAge = new OperationParameter("age", OperationParameterDirection.In, ageSQT, false);
            // add parameters to operation metadata
            opMetadata.Parameters.Add(parmFullName);
            opMetadata.Parameters.Add(parmGender);
            opMetadata.Parameters.Add(parmAge);
            // add result to operation metadata
            opMetadata.OperationResult = new OperationResult(QualifiedType.BooleanType, false);
            break;
        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the generated WSDL from the above operation.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <xsd:schema xmlns:ns2="sample://My.Samples.CodeSnippets" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xsd:element name="AddPerson">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="name" nillable="true" type="xsd:string" />
            <xsd:element minOccurs="1" maxOccurs="1" name="gender" nillable="true">
              <xsd:simpleType>
                <xsd:restriction base="xsd:string">
                  <xsd:pattern value="male|female" />
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="age">
              <xsd:simpleType>
                <xsd:restriction base="xsd:int">
                  <xsd:minInclusive value="0" />
                  <xsd:maxInclusive value="120" />
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="AddPersonResponse">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="AddPersonResult" type="xsd:boolean" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_AddPerson_InputMessage">
    <wsdl:part name="parameters" element="tns:AddPerson" />
  </wsdl:message>
  <wsdl:message name="SampleContract_AddPerson_OutputMessage">
    <wsdl:part name="parameters" element="tns:AddPersonResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="AddPerson">
      <wsdl:input wsaw:Action="/Sample/AddPerson" message="tns:SampleContract_AddPerson_InputMessage" />
      <wsdl:output wsaw:Action="/Sample/AddPerson/response" message="tns:SampleContract_AddPerson_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Example 3 - Resolving operation metadata that uses complex types; types are resolved within ResolveOperationMetadata operation

This following code example shows defining metadata for an operation called "AddPerson" that takes in one complex type parameter called "Person". The "Person" type contains three members, name, gender, and age. The members "gender" and "age" use the same restrictions as specified in Example 2.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Sample/AddPerson":
            // bool AddPerson(Person person)
            opMetadata.DisplayName = "AddPerson";
            opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
            opMetadata.Parameters.Add(new OperationParameter("person", OperationParameterDirection.In, new ComplexQualifiedType("/Types/Person"), false));
            opMetadata.OperationResult = new OperationResult(QualifiedType.BooleanType, false);

            // resolve extra type 'Person' within this method
            extraTypeMetadataResolved = new TypeMetadataCollection();
            // define the complex type - Person
            StructuredTypeMetadata personTM = new StructuredTypeMetadata("/Types/Person", "Person");
            // create name member
            ComplexQualifiedType fullNameCQT = new ComplexQualifiedType("/Types/Name");
            TypeMember tmFullName = new TypeMember("name", fullNameCQT, false);
            // create gender member
            genderSQT = new SimpleQualifiedType(XmlTypeCode.String);
            genderFacet = new XmlSchemaPatternFacet();
            genderFacet.Value = @"male|female";
            genderSQT.XmlSchemaFacets.Add(genderFacet);
            TypeMember tmGender = new TypeMember("gender", genderSQT, false);
            // create age member
            ageSQT = new SimpleQualifiedType(XmlTypeCode.Int);
            ageMinFacet = new XmlSchemaMinInclusiveFacet();
            ageMinFacet.Value = "0";
            ageMaxFacet = new XmlSchemaMaxInclusiveFacet();
            ageMaxFacet.Value = "120";
            ageSQT.XmlSchemaFacets.Add(ageMinFacet);
            ageSQT.XmlSchemaFacets.Add(ageMaxFacet);
            TypeMember tmAge = new TypeMember("age", ageSQT, false);
            // add members to type
            personTM.Members.Add(tmFullName);
            personTM.Members.Add(tmGender);
            personTM.Members.Add(tmAge);

            // resolve extra type 'Name' used within 'Person'
            StructuredTypeMetadata fullNameTM = new StructuredTypeMetadata("/Types/Name", "Name");
            fullNameTM.Members.Add(new TypeMember("firstName", QualifiedType.StringType, false));
            fullNameTM.Members.Add(new TypeMember("lastName", QualifiedType.StringType, false));
            // Add Greeting and Name typemetadata in the collection
            personTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE;
            fullNameTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE;
            extraTypeMetadataResolved.Add(personTM);
            extraTypeMetadataResolved.Add(fullNameTM);
            break;
        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the generated WSDL document from the above code example.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <xsd:schema xmlns:ns2="sample://My.Samples.CodeSnippets" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xsd:complexType name="Person">
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="name" nillable="true" type="ns2:Name" />
          <xsd:element minOccurs="1" maxOccurs="1" name="gender" nillable="true">
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:pattern value="male|female" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
          <xsd:element minOccurs="1" maxOccurs="1" name="age">
            <xsd:simpleType>
              <xsd:restriction base="xsd:int">
                <xsd:minInclusive value="0" />
                <xsd:maxInclusive value="120" />
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:element>
        </xsd:sequence>
      </xsd:complexType>
      <xsd:element name="Person" nillable="true" type="ns2:Person" />
      <xsd:complexType name="Name">
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="firstName" nillable="true" type="xsd:string" />
          <xsd:element minOccurs="1" maxOccurs="1" name="lastName" nillable="true" type="xsd:string" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:element name="Name" nillable="true" type="ns2:Name" />
      <xsd:element name="AddPerson">
        <xsd:annotation>
          <xsd:documentation>
            <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Sample/AddPerson/1</doc:action>
          </xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="person" nillable="true" type="ns2:Person" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="AddPersonResponse">
        <xsd:annotation>
          <xsd:documentation>
            <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Sample/AddPerson/1/response</doc:action>
          </xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="1" maxOccurs="1" name="AddPersonResult" type="xsd:boolean" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_AddPerson_InputMessage">
    <wsdl:part name="parameters" element="tns:AddPerson" />
  </wsdl:message>
  <wsdl:message name="SampleContract_AddPerson_OutputMessage">
    <wsdl:part name="parameters" element="tns:AddPersonResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="AddPerson">
      <wsdl:input wsaw:Action="/Sample/AddPerson/1" message="tns:SampleContract_AddPerson_InputMessage" />
      <wsdl:output wsaw:Action="/Sample/AddPerson/1/response" message="tns:SampleContract_AddPerson_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Example 4 - Resolving operation metadata that uses complex types; types are resolved within ResolveTypeMetadata operation

This example has exactly the same behavior as Example 3, with the only difference of letting the WCF LOB Adapter SDK call the ResolveTypeMetadata to resolve the complex types used within an operation.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{

    /// <summary>
    /// Returns an OperationMetadata object resolved from absolute name of the operation metadata object.
    /// The method should complete within the specified time span or throw a timeout exception.
    /// </summary>
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;
        // for illustrative purposes show how to resolve one operation here
        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";

        switch (operationId)
        {
            case "/Sample/AddPerson/2":
                // bool AddPerson(Person person)
                opMetadata.DisplayName = "AddPerson";
                opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
                opMetadata.Parameters.Add(new OperationParameter("person", OperationParameterDirection.In, new ComplexQualifiedType("/Types/Person"), false));
                opMetadata.OperationResult = new OperationResult(QualifiedType.BooleanType, false);
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }

    /// <summary>
    /// Returns a TypeMetadata object resolved from the absolute name of the type metadata object.
    /// The method should complete within the specified time span or throw a timeout exception.
    /// </summary>
    public TypeMetadata ResolveTypeMetadata(string typeId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;
        switch (typeId)
        {
            case "/Types/Person":
                // define the complex type - Person
                StructuredTypeMetadata personTM = new StructuredTypeMetadata(typeId, "Person");
                // create name member
                TypeMember tmFullName = new TypeMember("name", new ComplexQualifiedType("/Types/Name"), false);
                // create gender member
                SimpleQualifiedType genderSQT = new SimpleQualifiedType(XmlTypeCode.String);
                XmlSchemaPatternFacet genderFacet = new XmlSchemaPatternFacet();
                genderFacet.Value = @"male|female";
                genderSQT.XmlSchemaFacets.Add(genderFacet);
                TypeMember tmGender = new TypeMember("gender", genderSQT, false);
                // create age member
                SimpleQualifiedType ageSQT = new SimpleQualifiedType(XmlTypeCode.Int);
                XmlSchemaMinInclusiveFacet ageMinFacet = new XmlSchemaMinInclusiveFacet();
                ageMinFacet.Value = "0";
                XmlSchemaMaxInclusiveFacet ageMaxFacet = new XmlSchemaMaxInclusiveFacet();
                ageMaxFacet.Value = "120";
                ageSQT.XmlSchemaFacets.Add(ageMinFacet);
                ageSQT.XmlSchemaFacets.Add(ageMaxFacet);
                TypeMember tmAge = new TypeMember("age", ageSQT, false);
                // add members to type
                personTM.Members.Add(tmFullName);
                personTM.Members.Add(tmGender);
                personTM.Members.Add(tmAge);
                personTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE;
                return personTM;

            case "/Types/Name":
                StructuredTypeMetadata fullNameTM = new StructuredTypeMetadata(typeId, "Name");
                fullNameTM.Members.Add(new TypeMember("firstName", QualifiedType.StringType, false));
                fullNameTM.Members.Add(new TypeMember("lastName", QualifiedType.StringType, false));
                fullNameTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE;
                return fullNameTM;

            default:
                throw new AdapterException("Invalid type " + typeId);
        }
    }
}

Example 5 - Resolving operation metadata that uses predefined XML Schema

See TypeMetadata for an example of resolving a type that uses content from a predefined XML Schema file.

Example 6 - Resolving an 'inbound' operation metadata

You can resolve an inbound operation metadata similar to an outbound operation metadata as shown in examples above. The direction on the operation is set using Direction in the implementation of Browse operation.

Remarks

You must implement this interface to define the input and output contract for a given operation node identifier. This operation node identifier is typically an operation action. In IMetadataBrowseHandler, it is set on the operation node by using the NodeId property.

To define the operation signature for a given operation node identifier, you can use the following operation metadata object model classes:

  • OperationMetadata

  • ParameterizedOperationMetadata

  • OperationParameter

  • OperationResult

If the operation parameter and/or operation result are a complex data structure with data members, you need to define a rich type by using the following type metadata object model classes:

  • TypeMetadata

  • StructuredTypeMetadata

  • TypeMember

If a parameter, result, or type member is a simple primitive type, such as int, string, long, you can set the type by using SimpleQualifiedType.

If a parameter, result, or type member is a complex type, such as Customer, Invoice, you can set the type identifier by using ComplexQualifiedType to resolve the type definition.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IMetadataResolverHandler Members
Microsoft.ServiceModel.Channels.Common Namespace
GetMetadata

Other Resources

http://go.microsoft.com/fwlink/?LinkId=96108


IMetadataResolverHandler Members
See Also Methods
[image]

Represents an interface for retrieving operation and type metadata from the target system. It takes in an absolute node identifier and provides its metadata using the WCF LOB Adapter SDK’s metadata object model. This metadata object model is used by the dynamic contract builder to generate the WCF contract.

The following tables list the members exposed by the IMetadataResolverHandler type.

Public Methods

 | Name | Description
public method | IsOperationMetadataValid | Returns a Boolean value that indicates whether the specified operation metadata is valid by comparing a supplied time stamp with an internal time stamp that reflects the date and time the metadata was last changed.
public method | IsTypeMetadataValid | Returns a Boolean value that indicates whether the specified type metadata is valid.
public method | ResolveOperationMetadata | Resolves an operation ID to corresponding OperationMetadata objects.
public method | ResolveTypeMetadata | Resolves a supplied metadata typeId to a corresponding TypeMetadata object.
Top

See Also

Reference

IMetadataResolverHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
GetMetadata

Other Resources

http://go.microsoft.com/fwlink/?LinkId=96108


IMetadataResolverHandler Methods
[image]

Public Methods

 | Name | Description
public method | IsOperationMetadataValid | Returns a Boolean value that indicates whether the specified operation metadata is valid by comparing a supplied time stamp with an internal time stamp that reflects the date and time the metadata was last changed.
public method | IsTypeMetadataValid | Returns a Boolean value that indicates whether the specified type metadata is valid.
public method | ResolveOperationMetadata | Resolves an operation ID to corresponding OperationMetadata objects.
public method | ResolveTypeMetadata | Resolves a supplied metadata typeId to a corresponding TypeMetadata object.

See Also

Reference

IMetadataResolverHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
GetMetadata

Other Resources

http://go.microsoft.com/fwlink/?LinkId=96108


IMetadataResolverHandler.IsOperationMetadataValid Method
See Also Example
[image]

Returns a Boolean value that indicates whether the specified operation metadata is valid by comparing a supplied time stamp with an internal time stamp that reflects the date and time the metadata was last changed.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataResolverHandler
Dim operationId As String
Dim lastUpdatedTimestamp As DateTime
Dim timeout As TimeSpan
Dim returnValue As Boolean

returnValue = instance.IsOperationMetadataValid(operationId, lastUpdatedTimestamp, timeout)

Syntax

Visual Basic
Function IsOperationMetadataValid ( _
    operationId As String, _
    lastUpdatedTimestamp As DateTime, _
    timeout As TimeSpan _
) As Boolean
C#
bool IsOperationMetadataValid (
    string operationId,
    DateTime lastUpdatedTimestamp,
    TimeSpan timeout
)
C++
bool IsOperationMetadataValid (
    String^ operationId,
    DateTime lastUpdatedTimestamp,
    TimeSpan timeout
)
J#
boolean IsOperationMetadataValid (
    String operationId,
    DateTime lastUpdatedTimestamp,
    TimeSpan timeout
)
JScript
function IsOperationMetadataValid (
    operationId : String,
    lastUpdatedTimestamp : DateTime,
    timeout : TimeSpan
) : boolean

Parameters

operationId

The operation absolute name.

lastUpdatedTimestamp

The last time the metadata was retrieved from the source system.

timeout

The time-out for the operation

Return Value

true if the metadata is valid; otherwise, false.

Example

The following code example provides an implementation of this method.

C# Copy Code
/// <summary>
/// Returns a value indicating whether the specified operation metadata is valid
/// The DateTime field is provided to indicate when this specific operation metadata was last retrieved from the source system.
/// The method should complete within the specified timespan or throw a timeout exception.
/// </summary>
public bool IsOperationMetadataValid(string operationId, DateTime lastUpdatedTimestamp, TimeSpan timeout)
{
    // Note: we don't support timeout in this example

    String[] operationIdSections = operationId.Split('/');
    if (operationIdSections.Length == 5 &&
        operationIdSections[0].Equals(this.Connection.SqlConnection.DataSource) &&
        operationIdSections[1].Equals(this.Connection.SqlConnection.Database) &&
        operationIdSections[2].Equals("StoredProcedures"))
    {
        SqlCommand command = new SqlCommand(getTimestampForSP_Command, this.Connection.SqlConnection);
        command.Parameters.AddWithValue("@Schema", operationIdSections[3]);
        command.Parameters.AddWithValue("@Name", operationIdSections[4]);
        SqlParameter param = new SqlParameter("@Timestamp", System.Data.SqlDbType.DateTime);
        param.Direction = System.Data.ParameterDirection.Output;
        command.Parameters.Add(param);
        command.ExecuteScalar();
        if (lastUpdatedTimestamp.Equals((DateTime)command.Parameters["@Timestamp"].Value)) return true;
    }
    return false;
}

Remarks

A TimeoutException is thrown if the specified time-out is exceeded before the operation completes.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IMetadataResolverHandler Interface
IMetadataResolverHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IMetadataResolverHandler.IsTypeMetadataValid Method
See Also Example
[image]

Returns a Boolean value that indicates whether the specified type metadata is valid.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataResolverHandler
Dim typeId As String
Dim lastUpdatedTimestamp As DateTime
Dim timeout As TimeSpan
Dim returnValue As Boolean

returnValue = instance.IsTypeMetadataValid(typeId, lastUpdatedTimestamp, timeout)

Syntax

Visual Basic
Function IsTypeMetadataValid ( _
    typeId As String, _
    lastUpdatedTimestamp As DateTime, _
    timeout As TimeSpan _
) As Boolean
C#
bool IsTypeMetadataValid (
    string typeId,
    DateTime lastUpdatedTimestamp,
    TimeSpan timeout
)
C++
bool IsTypeMetadataValid (
    String^ typeId,
    DateTime lastUpdatedTimestamp,
    TimeSpan timeout
)
J#
boolean IsTypeMetadataValid (
    String typeId,
    DateTime lastUpdatedTimestamp,
    TimeSpan timeout
)
JScript
function IsTypeMetadataValid (
    typeId : String,
    lastUpdatedTimestamp : DateTime,
    timeout : TimeSpan
) : boolean

Parameters

typeId

The specified type metadata ID.

lastUpdatedTimestamp

The last time the metadata was retrieved from the source system.

timeout

The maximum time to wait for the completion of the operation.

Return Value

true if the type metadata has not changed since the date and time specified; otherwise, false.

Example

The following code example provides an implementation of this method.

C# Copy Code
/// <summary>
/// Returns a value indicating whether the specified type metadata is valid.
/// The DateTime field is provided to indicate when this specific type metadata was last retrieved from the source system.
/// The method should complete within the specified timespan or throw a timeout exception.
/// </summary>
public bool IsTypeMetadataValid(string typeId, DateTime lastUpdatedTimestamp, TimeSpan timeout)
{
    String operationId = typeId.Remove(typeId.Length - 8, 8);  //remove "/DataRow"
    if (lastUpdatedTimestamp.Equals(this.MetadataLookup.GetOperationDefinition(operationId, timeout).MetadataTimestamp))
        return true;
    return false;
}

Remarks

A TimeoutException is thrown if the specified time-out is exceeded before the operation completes.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IMetadataResolverHandler Interface
IMetadataResolverHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IMetadataResolverHandler.ResolveOperationMetadata Method
See Also Example
[image]

Resolves an operation ID to corresponding OperationMetadata objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataResolverHandler
Dim operationId As String
Dim timeout As TimeSpan
Dim extraTypeMetadataResolved As TypeMetadataCollection
Dim returnValue As OperationMetadata

returnValue = instance.ResolveOperationMetadata(operationId, timeout, extraTypeMetadataResolved)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId:="2#")> _
Function ResolveOperationMetadata ( _
    operationId As String, _
    timeout As TimeSpan, _
    <OutAttribute> ByRef extraTypeMetadataResolved As TypeMetadataCollection _
) As OperationMetadata
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="2#")]
OperationMetadata ResolveOperationMetadata (
    string operationId,
    TimeSpan timeout,
    out TypeMetadataCollection extraTypeMetadataResolved
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1021:AvoidOutParameters", MessageId=L"2#")]
OperationMetadata^ ResolveOperationMetadata (
    String^ operationId,
    TimeSpan timeout,
    [OutAttribute] TypeMetadataCollection^% extraTypeMetadataResolved
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="2#") */
OperationMetadata ResolveOperationMetadata (
    String operationId,
    TimeSpan timeout,
    /** @attribute OutAttribute() */ /** @ref */ TypeMetadataCollection extraTypeMetadataResolved
)
JScript

Parameters

operationId

The operation absolute name.

timeout

The maximum time to wait for completion of the operation.

extraTypeMetadataResolved

Any extra type metadata that needs to be pushed into the cache. This includes any nested or operation-independent types

Return Value

The resolved OperationMetadata object.

Example

For an implementation of this method, see the example section of this interface.

Remarks

This method is responsible for retrieving metadata that represents the operations offered by the target system. The operationId parameter uniquely identifies the operation that needs to be resolved. This contains any path or category information that is needed to identify one operation from another. This is necessary because some systems use the same operation name in different objects, like Customer\Create and Item\Create. In both cases the operation name is "Create", but Customer\Create and Item\Create may be very different. The time-out parameter provides a maximum amount of time the operation should take to resolve the operation metadata.

A TimeoutException is thrown if the specified time-out is exceeded before the operation completes.

If the Outbound is set on the MetadataRetrievalNode, a proxy is generated when this node is resolved. If the Inbound is set on the MetadataRetrievalNode node, a service contract is generated to be implemented (and hosted via Service Host) by the adapter consumer when this node is resolved.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IMetadataResolverHandler Interface
IMetadataResolverHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IMetadataResolverHandler.ResolveTypeMetadata Method
See Also Example
[image]

Resolves a supplied metadata typeId to a corresponding TypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataResolverHandler
Dim typeId As String
Dim timeout As TimeSpan
Dim extraTypeMetadataResolved As TypeMetadataCollection
Dim returnValue As TypeMetadata

returnValue = instance.ResolveTypeMetadata(typeId, timeout, extraTypeMetadataResolved)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId:="2#")> _
Function ResolveTypeMetadata ( _
    typeId As String, _
    timeout As TimeSpan, _
    <OutAttribute> ByRef extraTypeMetadataResolved As TypeMetadataCollection _
) As TypeMetadata
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="2#")]
TypeMetadata ResolveTypeMetadata (
    string typeId,
    TimeSpan timeout,
    out TypeMetadataCollection extraTypeMetadataResolved
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1021:AvoidOutParameters", MessageId=L"2#")]
TypeMetadata^ ResolveTypeMetadata (
    String^ typeId,
    TimeSpan timeout,
    [OutAttribute] TypeMetadataCollection^% extraTypeMetadataResolved
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1021:AvoidOutParameters", MessageId="2#") */
TypeMetadata ResolveTypeMetadata (
    String typeId,
    TimeSpan timeout,
    /** @attribute OutAttribute() */ /** @ref */ TypeMetadataCollection extraTypeMetadataResolved
)
JScript

Parameters

typeId

The type absoluteName.

timeout

The maximum time to wait for completion of the operation.

extraTypeMetadataResolved

Any extra type metadata that needs to be pushed into the cache. This includes any nested or operation-independent types.

Return Value

The resolved TypeMetadata object.

Example

For an implementation of this method, see the example section of this interface.

Remarks

This method is responsible for retrieving metadata that represents the types used by the target system. The typeId parameter uniquely identifies the type that needs to be resolved. This contains any path or category information that is needed to identify one type from another. This is necessary because some systems use the same type name in different objects, like Customer\Name and Item\Name. In both cases, the type name is "Name", but Customer\Name and Item\Name may be very different. The time-out parameter provides a maximum amount of time the operation should take to resolve the type metadata.

Use this method to resolve type metadata as identified by the typeId.

Note
Make sure that the method you use to resolve the metadata does not ultimately rely on the same implementation. If it does, calls will result in an infinite loop.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IMetadataResolverHandler Interface
IMetadataResolverHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IMetadataSearchHandler Interface
See Also Example Members
[image]

Defines an interface for performing a connection-based search for metadata from the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataSearchHandler

Syntax

Visual Basic
Public Interface IMetadataSearchHandler
    Inherits IConnectionHandler, IDisposable
C#
public interface IMetadataSearchHandler : IConnectionHandler, IDisposable
C++
public interface class IMetadataSearchHandler : IConnectionHandler, IDisposable
J#
public interface IMetadataSearchHandler extends IConnectionHandler, IDisposable
JScript
public interface IMetadataSearchHandler extends IConnectionHandler, IDisposable

Example

Consider the adapter that connects to a SQL Server to retrieve a list of stored procedures. The following example shows how search criteria are used to filter the stored procedure list.

C# Copy Code
public class SampleAdapterMetadataSearchHandler : IMetadataSearchHandler
{
    . . .
    public MetadataRetrievalNode[] Search(string nodeId
        , string searchCriteria
        , int maxChildNodes, TimeSpan timeout)
    {
        List<MetadataRetrievalNode> nodes = new List<MetadataRetrievalNode>();
        // This sample searches for the stored procedures
        if (nodeId.Equals("/StoredProcedures"))
        {
            SqlCommand cmd = new SqlCommand();
            cmd.CommandText = "select name from sysobjects" +
                                      " where type='P' order by name asc";
            cmd.CommandType = CommandType.Text;
            cmd.Connection = this.Connection.DBConnection;
            try
            {
                SqlDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    string name = reader["name"].ToString();
                    MetadataRetrievalNode node = new MetadataRetrievalNode(name);
                    node.DisplayName = name;
                    node.IsOperation = true;
                    node.Direction = MetadataRetrievalNodeDirections.Outbound;
                    if( name.Contains(searchCriteria) )
                        nodes.Add(node);
                }
            }
            catch (Exception exc)
            {
                throw new AdapterException("Unable to retrieve stored procedures in the browse handler.", exc);
            }
        }
        return nodes.ToArray();
    }
}

The following example shows how to test the search handler within a console application.

C# Copy Code
static void Main(string[] args)
{
    // Create metadata retrieval client using app.config
    MetadataRetrievalClient metadataProxy = new MetadataRetrievalClient("SampleAdapterBinding_IMetadataRetrievalContract");
    // Start searching for the nodes
    Console.WriteLine("Searching " + metadataProxy.Endpoint.Binding.Name + "...\n");
    // Search the nodes
    MetadataRetrievalNode[] nodes = metadataProxy.Search("/StoredProcedures", "TDDS", 100);
    // Use the node
    foreach (MetadataRetrievalNode node in nodes)
    {
        Console.WriteLine(node.DisplayName + " (" + node.Direction + ")");
    }
    Console.WriteLine();
    // close the client
    metadataProxy.Close();
}

The above program uses the following app.config file that stores the endpoint to communicate to the adapter.

Copy Code
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <system.serviceModel>
    <bindings>
      <sampleAdapterBinding>
        <binding name="SampleAdapterBinding"/>
      </sampleAdapterBinding>
    </bindings>
    <client>
      <endpoint
      address="sample://localhost:10000/DB2OLEDB/BizTalkDTADb?Protocol=TCPIP&amp;Driver=Test"
        binding="sampleAdapterBinding"
        bindingConfiguration="SampleAdapterBinding"
        contract="Microsoft.ServiceModel.Channels.IMetadataRetrievalContract"
        name="SampleAdapterBinding_IMetadataRetrievalContract" />
    </client>
  </system.serviceModel>
</configuration>

Remarks

The search handler Search method returns a collection of nodes based on a given search criteria. The adapter developer can choose to return either category nodes or operation nodes, or both.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IMetadataSearchHandler Members
Microsoft.ServiceModel.Channels.Common Namespace
MetadataRetrievalClient
MetadataRetrievalNode
IConnectionHandler


IMetadataSearchHandler Members
See Also Methods
[image]

Defines an interface for performing a connection-based search for metadata from the target system.

The following tables list the members exposed by the IMetadataSearchHandler type.

Public Methods

 | Name | Description
public method | Search | Retrieves an array of MetadataRetrievalNode objects from the target system.
Top

See Also

Reference

IMetadataSearchHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
MetadataRetrievalClient
MetadataRetrievalNode
IConnectionHandler


IMetadataSearchHandler Methods
[image]

Public Methods

 | Name | Description
public method | Search | Retrieves an array of MetadataRetrievalNode objects from the target system.

See Also

Reference

IMetadataSearchHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace
MetadataRetrievalClient
MetadataRetrievalNode
IConnectionHandler


IMetadataSearchHandler.Search Method
See Also Example
[image]

Retrieves an array of MetadataRetrievalNode objects from the target system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IMetadataSearchHandler
Dim nodeId As String
Dim searchCriteria As String
Dim maxChildNodes As Integer
Dim timeout As TimeSpan
Dim returnValue As MetadataRetrievalNode()

returnValue = instance.Search(nodeId, searchCriteria, maxChildNodes, timeout)

Syntax

Visual Basic
Function Search ( _
    nodeId As String, _
    searchCriteria As String, _
    maxChildNodes As Integer, _
    timeout As TimeSpan _
) As MetadataRetrievalNode()
C#
MetadataRetrievalNode[] Search (
    string nodeId,
    string searchCriteria,
    int maxChildNodes,
    TimeSpan timeout
)
C++
array<MetadataRetrievalNode^>^ Search (
    String^ nodeId,
    String^ searchCriteria,
    int maxChildNodes,
    TimeSpan timeout
)
J#
MetadataRetrievalNode[] Search (
    String nodeId,
    String searchCriteria,
    int maxChildNodes,
    TimeSpan timeout
)
JScript
function Search (
    nodeId : String,
    searchCriteria : String,
    maxChildNodes : int,
    timeout : TimeSpan
) : MetadataRetrievalNode[]

Parameters

nodeId

The Id of the node to start searching from.

Note
If null or an empty string (""), operations will be retrieved from the root node ("/").

searchCriteria

The search criteria, which is adapter-specific. If no search criteria are specified, the adapter should return all nodes.

maxChildNodes

The maximum number of result nodes to return. Use Int32.Max to retrieve all result nodes.

timeout

The maximum time allowed for the operation to complete.

Return Value

An array of MetadataRetrievalNode objects that represent the search result.

Example

The following code example is an implementation of this method. It searches for operations defined within the specified WSDL file, and then returns an array of the nodes as the search result.

C# Copy Code
public MetadataRetrievalNode[] Search(string nodeId
    , string searchCriteria
    , int maxChildNodes, TimeSpan timeout)
{

    string[] wsdlFiles;
    wsdlFiles = Directory.GetFiles(@"C:\temp\sampleadapter\wsdls", "*.wsdl");
    WSDL.ServiceDescription desc = System.Web.Services.Description.ServiceDescription.Read(wsdlFiles[0]);
    int i = 0;
    foreach (WSDL.Operation op in desc.PortTypes[0].Operations)
    {
    if (op.Name.Contains(searchCriteria))
    i++;
    }

    MetadataRetrievalNode[] mdNodes = new MetadataRetrievalNode[i];

i=0;
    foreach (WSDL.Operation op in desc.PortTypes[0].Operations)
    {
    if (op.Name.Contains(searchCriteria))
    {
            mdNodes[i] = new MetadataRetrievalNode();
            mdNodes[i].NodeId = op.Name;
            mdNodes[i].DisplayName = op.Name;
            mdNodes[i].Description = op.Documentation;
            mdNodes[i].IsOperation = true;
            i++;
        }
    }

    return mdNodes;
}

Remarks

Searching will begin at the node specified and should proceed to all of the children of that node using the filter specified (if any). The syntax of the filter is dependent on the target line of business system. If the node Id is missing, all nodes should be searched. If no filter criteria are supplied, all child nodes should be returned.

When searching, it is important to adhere to the supplied time-out value and terminate the search if the specified time period has elapsed without the method completing.

Note
Make sure that the method you use to search the metadata does not ultimately rely on the same implementation. If it does, calls will result in an infinite loop.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IMetadataSearchHandler Interface
IMetadataSearchHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


InboundReply Class
See Also Example Members
[image]

Represents an adapter message inbound reply. It provides a reply that is correlated to an incoming request.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundReply

Syntax

Visual Basic
Public MustInherit Class InboundReply
    Implements IInboundReply, IDisposable
C#
public abstract class InboundReply : IInboundReply, IDisposable
C++
public ref class InboundReply abstract : IInboundReply, IDisposable
J#
public abstract class InboundReply implements IInboundReply, IDisposable
JScript
public abstract class InboundReply implements IInboundReply, IDisposable

Example

Consider an adapter to the file system. The following example shows a reply from the adapter to the target system from within an inbound operation.

C# Copy Code
public class FileReply : InboundReply
{
    private string path;
    private MetadataLookup dict;

    public FileReply(string path, MetadataLookup metadataLookup)
        : base()
    {
        dict = metadataLookup;
        this.path = path;

    }

    public override void Reply(Message message, TimeSpan timeout)
    {
        XmlReader requestMessageBody = requestMessage.GetReaderAtBodyContents();
        OperationMetadata operationMetadata = dict.GetOperationDefinitionFromOutputMessageAction(requestMessage.Headers.Action, timeout);
        string operationName = op.DisplayName;

        requestMessageBody.ReadStartElement(OperationName + "Response");

        if (operationName == "FileAppend")
        {
            string name;
            string data;

            data = requestMessageBody.ReadElementString(operationName + "Result");
            name = requestMessageBody.ReadElementString("Name");
        }
        string fileName = path + @"\\" + name;

        StreamWriter sw = new StreamWriter(fileName, true);
        sw.Write(data);
        sw.Close();
    }

    /// <summary>
    /// Close the resources
    /// </summary>
    public override void Abort()
    {
    }
}

Remarks

In the TryReceive method, set the out parameter 'reply' to null if no reply needs to be sent to the target system.

This abstract class inherits from the IInboundReply interface, and implements its BeginReply and EndReply methods.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.InboundReply

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

InboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace
IInboundReply
IInboundHandler


InboundReply Members
See Also Methods Constructors
[image]

Represents an adapter message inbound reply. It provides a reply that is correlated to an incoming request.

The following tables list the members exposed by the InboundReply type.

Protected Constructors

Name | Description
InboundReply | Initializes a new instance of the InboundReply class.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Abort | Aborts processing the request associated with the context.
public method | BeginReply | Begins an asynchronous operation to reply to the supplied request Message.
public method | Dispose | Overloaded. Releases the relevant resources and disposes this instance.
public method | EndReply | Completes an asynchronous operation to reply to a request message.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | Reply | Replies to a request message.
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. Releases the relevant resources and disposes this instance.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

InboundReply Class
Microsoft.ServiceModel.Channels.Common Namespace
IInboundReply
IInboundHandler


InboundReply Constructor
[image]

Initializes a new instance of the InboundReply class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New InboundReply

Syntax

Visual Basic
Protected Sub New
C#
protected InboundReply ()
C++
protected:
InboundReply ()
J#
protected InboundReply ()
JScript
protected function InboundReply ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundReply Class
InboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


InboundReply Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Abort | Aborts processing the request associated with the context.
public method | BeginReply | Begins an asynchronous operation to reply to the supplied request Message.
public method | Dispose | Overloaded. Releases the relevant resources and disposes this instance.
public method | EndReply | Completes an asynchronous operation to reply to a request message.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | Reply | Replies to a request message.
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. Releases the relevant resources and disposes this instance.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

InboundReply Class
Microsoft.ServiceModel.Channels.Common Namespace
IInboundReply
IInboundHandler


InboundReply.Abort Method
[image]

Aborts processing the request associated with the context.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundReply

instance.Abort

Syntax

Visual Basic
Public MustOverride Sub Abort
C#
public abstract void Abort ()
C++
public:
virtual void Abort () abstract
J#
public abstract void Abort ()
JScript
public abstract function Abort ()

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundReply Class
InboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


InboundReply.BeginReply Method
[image]

Begins an asynchronous operation to reply to the supplied request Message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundReply
Dim message As Message
Dim timeout As TimeSpan
Dim callback As AsyncCallback
Dim state As Object
Dim returnValue As IAsyncResult

returnValue = instance.BeginReply(message, timeout, callback, state)

Syntax

Visual Basic
Public Function BeginReply ( _
    message As Message, _
    timeout As TimeSpan, _
    callback As AsyncCallback, _
    state As Object _
) As IAsyncResult
C#
public IAsyncResult BeginReply (
    Message message,
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
C++
public:
virtual IAsyncResult^ BeginReply (
    Message^ message,
    TimeSpan timeout,
    AsyncCallback^ callback,
    Object^ state
) sealed
J#
public final IAsyncResult BeginReply (
    Message message,
    TimeSpan timeout,
    AsyncCallback callback,
    Object state
)
JScript
public final function BeginReply (
    message : Message,
    timeout : TimeSpan,
    callback : AsyncCallback,
    state : Object
) : IAsyncResult

Parameters

message

The incoming message that contains the request.

timeout

The timespan that specifies the interval of time to wait for the reply to a request.

callback

The AsyncCallback delegate that receives the notification of the asynchronous reply operation completion.

state

An object, specified by the application, that contains state information associated with the asynchronous reply operation

Return Value

The IAsyncResult references the asynchronous reply operation.

Remarks

Use this method when you need the application processing to continue without waiting. Use synchronous Reply method when it is acceptable for the current thread to be blocked while it replies to the request message or until the time-out interval is exceeded.

This method receives notification, through a callback, of the identity of the event handler for the operation. The operation is not complete until either the reply has been sent or the time-out occurs.

A TimeoutException is thrown if the specified time-out is exceeded before the operation completes.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundReply Class
InboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


InboundReply.Dispose Method
[image]

Releases the relevant resources and disposes this instance.

Overload List

Name | Description
InboundReply.Dispose () | Releases the relevant resources and disposes this instance.
InboundReply.Dispose (Boolean) | Releases the relevant resources and disposes this instance.

See Also

Reference

InboundReply Class
InboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


InboundReply.Dispose Method ()
[image]

Releases the relevant resources and disposes this instance.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundReply

instance.Dispose

Syntax

Visual Basic
Public Sub Dispose
C#
public void Dispose ()
C++
public:
virtual void Dispose () sealed
J#
public final void Dispose ()
JScript
public final function Dispose ()

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundReply Class
InboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


InboundReply.Dispose Method (Boolean)
[image]

Releases the relevant resources and disposes this instance.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim disposing As Boolean

Me.Dispose(disposing)

Syntax

Visual Basic
Protected Overridable Sub Dispose ( _
    disposing As Boolean _
)
C#
protected virtual void Dispose (
    bool disposing
)
C++
protected:
virtual void Dispose (
    bool disposing
)
J#
protected void Dispose (
    boolean disposing
)
JScript
protected function Dispose (
    disposing : boolean
)

Parameters

disposing

true when called by user's code to release managed and unmanaged resources; false, if called by runtime.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundReply Class
InboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


InboundReply.EndReply Method
[image]

Completes an asynchronous operation to reply to a request message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundReply
Dim result As IAsyncResult

instance.EndReply(result)

Syntax

Visual Basic
Public Sub EndReply ( _
    result As IAsyncResult _
)
C#
public void EndReply (
    IAsyncResult result
)
C++
public:
virtual void EndReply (
    IAsyncResult^ result
) sealed
J#
public final void EndReply (
    IAsyncResult result
)
JScript
public final function EndReply (
    result : IAsyncResult
)

Parameters

result

The IAsyncResult by a call to one of the IInboundReply methods.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundReply Class
InboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


InboundReply.Reply Method
[image]

Replies to a request message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InboundReply
Dim message As Message
Dim timeout As TimeSpan

instance.Reply(message, timeout)

Syntax

Visual Basic
Public MustOverride Sub Reply ( _
    message As Message, _
    timeout As TimeSpan _
)
C#
public abstract void Reply (
    Message message,
    TimeSpan timeout
)
C++
public:
virtual void Reply (
    Message^ message,
    TimeSpan timeout
) abstract
J#
public abstract void Reply (
    Message message,
    TimeSpan timeout
)
JScript
public abstract function Reply (
    message : Message,
    timeout : TimeSpan
)

Parameters

message

The incoming message that contains the request.

timeout

The TimeSpan that specifies the interval of time to wait for the reply to a request.

Remarks

Use synchronous Reply method when it is acceptable for the current thread to be blocked while it replies to the request message. The thread is blocked up to the specified time-out. If you need the application processing to continue without waiting, use the asynchronous BeginReplymethod. This method receives notification, through a callback, of the identity of the event handler for the operation. The operation is not complete until either a message becomes available in the channel or the time-out occurs.

A TimeoutException is thrown if the specified time-out is exceeded before the operation completes.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InboundReply Class
InboundReply Members
Microsoft.ServiceModel.Channels.Common Namespace


InvalidUriException Class
See Also Example Members
[image]

Represents an exception that is thrown when the URI doesn’t have the required components to connect to the target system. This class cannot be inherited.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As InvalidUriException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class InvalidUriException
    Inherits EndpointNotFoundException
C#
[SerializableAttribute]
public class InvalidUriException : EndpointNotFoundException
C++
[SerializableAttribute]
public ref class InvalidUriException : public EndpointNotFoundException
J#
/** @attribute SerializableAttribute() */
public class InvalidUriException extends EndpointNotFoundException
JScript
SerializableAttribute
public class InvalidUriException extends EndpointNotFoundException

Example

The following code example shows how to use this class.

C# Copy Code
if (    String.IsNullOrEmpty(Hostname) ||
        String.IsNullOrEmpty(Provider) ||
        String.IsNullOrEmpty(Database) ||
        String.IsNullOrEmpty(Protocol) ||
        String.IsNullOrEmpty(Driver)   ||
        Port == 0 )
{
    throw new InvalidUriException("Fields are missing. Cannot construct a valid URI until all the required fields have value.");
}

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
System.ServiceModel.EndpointNotFoundException
Microsoft.ServiceModel.Channels.Common.InvalidUriException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

InvalidUriException Members
Microsoft.ServiceModel.Channels.Common Namespace


InvalidUriException Members
See Also Constructors Methods Properties
[image]

Represents an exception that is thrown when the URI doesn’t have the required components to connect to the target system. This class cannot be inherited.

The following tables list the members exposed by the InvalidUriException type.

Public Constructors (see also Protected Constructors)

Name | Description
InvalidUriException | Overloaded. Initializes a new instance of the InvalidUriException class.
Top

Protected Constructors

Name | Description
InvalidUriException | Overloaded. Initializes a new instance of the InvalidUriException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

InvalidUriException Class
Microsoft.ServiceModel.Channels.Common Namespace


InvalidUriException Constructor
[image]

Initializes a new instance of the InvalidUriException class.

Overload List

Name | Description
InvalidUriException () | Initializes a new instance of the InvalidUriException class.
InvalidUriException (SerializationInfo, StreamingContext) | Initializes a new instance of the InvalidUriException by using the specified serialization information and context objects.
InvalidUriException (String) | Initializes a new instance of the InvalidUriException class by using the specified error message.
InvalidUriException (String, Exception) | Initializes a new instance of the InvalidUriException class by using the specified error message and the inner Exception.

See Also

Reference

InvalidUriException Class
InvalidUriException Members
Microsoft.ServiceModel.Channels.Common Namespace


InvalidUriException Constructor ()
[image]

Initializes a new instance of the InvalidUriException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New InvalidUriException

Syntax

Visual Basic
Public Sub New
C#
public InvalidUriException ()
C++
public:
InvalidUriException ()
J#
public InvalidUriException ()
JScript
public function InvalidUriException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InvalidUriException Class
InvalidUriException Members
Microsoft.ServiceModel.Channels.Common Namespace


InvalidUriException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the InvalidUriException by using the specified serialization information and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New InvalidUriException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected InvalidUriException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
InvalidUriException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected InvalidUriException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function InvalidUriException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InvalidUriException Class
InvalidUriException Members
Microsoft.ServiceModel.Channels.Common Namespace


InvalidUriException Constructor (String)
[image]

Initializes a new instance of the InvalidUriException class by using the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New InvalidUriException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public InvalidUriException (
    string message
)
C++
public:
InvalidUriException (
    String^ message
)
J#
public InvalidUriException (
    String message
)
JScript
public function InvalidUriException (
    message : String
)

Parameters

message

The message that describes the error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InvalidUriException Class
InvalidUriException Members
Microsoft.ServiceModel.Channels.Common Namespace


InvalidUriException Constructor (String, Exception)
[image]

Initializes a new instance of the InvalidUriException class by using the specified error message and the inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New InvalidUriException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public InvalidUriException (
    string message,
    Exception inner
)
C++
public:
InvalidUriException (
    String^ message,
    Exception^ inner
)
J#
public InvalidUriException (
    String message,
    Exception inner
)
JScript
public function InvalidUriException (
    message : String,
    inner : Exception
)

Parameters

message

The error message that explains the reason for this exception.

inner

The exception that is the cause of the current exception. If the inner parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

InvalidUriException Class
InvalidUriException Members
Microsoft.ServiceModel.Channels.Common Namespace


InvalidUriException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

InvalidUriException Class
Microsoft.ServiceModel.Channels.Common Namespace


InvalidUriException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

InvalidUriException Class
Microsoft.ServiceModel.Channels.Common Namespace


IOutboundHandler Interface
See Also Members
[image]

Represents an interface for handling outbound data.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IOutboundHandler

Syntax

Visual Basic
Public Interface IOutboundHandler
    Inherits IConnectionHandler, IDisposable
C#
public interface IOutboundHandler : IConnectionHandler, IDisposable
C++
public interface class IOutboundHandler : IConnectionHandler, IDisposable
J#
public interface IOutboundHandler extends IConnectionHandler, IDisposable
JScript
public interface IOutboundHandler extends IConnectionHandler, IDisposable

Remarks

You must implement this interface when your adapter needs to send data to a target system.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IOutboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IOutboundHandler Members
See Also Methods
[image]

Represents an interface for handling outbound data.

The following tables list the members exposed by the IOutboundHandler type.

Public Methods

 | Name | Description
public method | Execute | Executes the request Message by invoking the corresponding method on the target system and returns a response Message object.
Top

See Also

Reference

IOutboundHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace


IOutboundHandler Methods
[image]

Public Methods

 | Name | Description
public method | Execute | Executes the request Message by invoking the corresponding method on the target system and returns a response Message object.

See Also

Reference

IOutboundHandler Interface
Microsoft.ServiceModel.Channels.Common Namespace


IOutboundHandler.Execute Method
See Also Example
[image]

Executes the request Message by invoking the corresponding method on the target system and returns a response Message object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IOutboundHandler
Dim message As Message
Dim timeout As TimeSpan
Dim returnValue As Message

returnValue = instance.Execute(message, timeout)

Syntax

Visual Basic
Function Execute ( _
    message As Message, _
    timeout As TimeSpan _
) As Message
C#
Message Execute (
    Message message,
    TimeSpan timeout
)
C++
Message^ Execute (
    Message^ message,
    TimeSpan timeout
)
J#
Message Execute (
    Message message,
    TimeSpan timeout
)
JScript
function Execute (
    message : Message,
    timeout : TimeSpan
) : Message

Parameters

message

The Message to be executed.

timeout

The maximum time to wait for completion of the operation.

Note
The operation should throw a TimeoutException if the specified time-out is exceeded before the operation is completed.

Return Value

The response Message object; null if there was no response.

Example

The following code example shows how to convert the WCF request message to the target system-specific request message format, and then transform the target system-specific response message to the WCF response message. Within this example, the implementation is being provided for the operation "Add".

Calculator Category

Operation Name | Operation Details | Operation Direction
Add | double Add(double n1, double n2) | Outbound

The metadata for this operation is defined using the implementation of IMetadataBrowseHandler and IMetadataResolverHandler.

C# Copy Code
/// <summary>
/// Executes the request message on the target system and returns a response message.
/// If there isn’t a response, this method should return null
/// </summary>
public Message Execute(Message message, TimeSpan timeout)
{
    // Typically, here the adapter developer will map the
    // incoming WCF message to the target system message.
    // However, for illustrative purposes, we will just return
    // some dummy responses back

    // Get the OperationMetadata definition for this incoming operation
    ParameterizedOperationMetadata om =
        (ParameterizedOperationMetadata) this.MetadataLookup.GetOperationDefinitionFromInputMessageAction(message.Headers.Action, timeout);
    if (om == null)
    {
        // Copy the message to a buffer.
        MessageBuffer mb = message.CreateBufferedCopy(65536);
        //Log to a file.
        FileStream stream = new FileStream(@"c:\temp\log.xml",FileMode.Append);
        mb.WriteMessage(stream);
        stream.Flush();

SampleAdapterUtilities.Trace.Trace(TraceEventType.Error, "", "Invalid operation.", this, new MessageTraceRecord(message));

        // the adapter doesn't understand this operation
        throw new AdapterException("Invalid operation " + message.Headers.Action);
    }

    switch (message.Headers.Action)
    {
        case "/Calculator/Add":
            // Expected: add the two numbers and return the result
            return Add(om, message, timeout); …
        // More cases here if any
    }
    return null;
}

private Message Add(ParameterizedOperationMetadata om, Message message, TimeSpan timeout)
{
    string outputValue = String.Empty;
    // *** PARSE INCOMING REQUEST
    // Input Message Format
    // <Add><n1>{value}</n1><n2>{value}</n2></Add>
    double n1, n2;
    using (XmlDictionaryReader inputReader = message.GetReaderAtBodyContents())
    {
        // Read <Name>
        inputReader.MoveToContent();
        inputReader.ReadStartElement("Add");
        inputReader.MoveToContent();
        n1 = inputReader.ReadElementContentAsDouble();
        inputReader.MoveToContent();
        n2 = inputReader.ReadElementContentAsDouble();
        inputReader.MoveToContent();
        inputReader.ReadEndElement();
    }

    double result = n1 + n2;

    // *** GENERATE RESPONSE
    StringBuilder outputString = new StringBuilder();
    XmlWriterSettings settings = new XmlWriterSettings();
    settings.OmitXmlDeclaration = true;
    // Create response message
    XmlWriter replywriter = XmlWriter.Create(outputString, settings);
    replywriter.WriteStartElement("AddResponse", SampleAdapter.SERVICENAMESPACE);
    replywriter.WriteElementString("AddResult", result.ToString());
    replywriter.WriteEndElement();
    replywriter.Close();
    XmlReader replyReader = XmlReader.Create(new StringReader(outputString.ToString()));
    // Output Message Format
    // <AddResponse><AddResult>{Value}</AddResult></AddResponse>
    // create output message
    Message replymessage = Message.CreateMessage(MessageVersion.Default, om.OutputMessageAction, replyReader);
    return replymessage;
}

Remarks

This method is responsible for transforming the WCF request message to the target system-specific message within a specified interval of time, and then transforming the target system-specific response message to the WCF response message.

If your adapter is performing a one-way send (there is no response message), this method should return null. If your adapter is performing a two way operation with OperationResult equals to Empty, this method should return a WCF response message with an empty body. Else, it should return the WCF response message with a body that contains the operation result. You need to use OutputMessageAction to construct the response action string.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IOutboundHandler Interface
IOutboundHandler Members
Microsoft.ServiceModel.Channels.Common Namespace


IWsdlRetrieval Interface
See Also Example Members
[image]

Supports the construction of custom WSDL. You need to implement this interface and override the BuildWsdlRetrieval method if you want to provide your own WSDL or modify the one generated by the WCF LOB Adapter SDK.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IWsdlRetrieval

Syntax

Visual Basic
Public Interface IWsdlRetrieval
C#
public interface IWsdlRetrieval
C++
public interface class IWsdlRetrieval
J#
public interface IWsdlRetrieval
JScript
public interface IWsdlRetrieval

Example

Scenario 1 - Extend the WSDL

The following example will show you how to extend the base WSDL generated by the WCF LOB Adapter SDK by using the following three steps.

  1. Override the BuildWsdlRetrieval method of the Adapter derived class.

  2. Implement the IWsdlRetrieval interface to provide a custom WSDL Builder.

  3. Run the Service Metadata Tool (svcutil.exe) to generate your custom WSDL.

Note
The base WSDL Builder provided by the WCF LOB Adapter SDK should be sufficient in most cases. We recommend using the base functionality, unless you have a need to support additional constructs in WSDL such as <wsdl:documentation>, <wsdl:types>, <wsdl:port>, <wsdl:message>, <wsdl:portType>.

The following code example overrides the BuildWsdlRetrieval method of the Adapter derived class.

C# Copy Code
public class SampleAdapter : Adapter
{
    . . .
    protected override IWsdlRetrieval BuildWsdlRetrieval(MetadataLookup metadataLookup)
    {
            return new CustomWsdlBuilder(base.BuildWsdlRetrieval(metadataLookup));
    }

}

The following code example implements the IWsdlRetrieval interface to provide a custom WSDL Builder.

C# Copy Code
using System;
using System.Web.Services.Description;
using System.IO;
using Microsoft.ServiceModel.Channels;
using Microsoft.ServiceModel.Channels.Common;

namespace My.Samples.CodeSnippets
{
    class CustomWsdlBuilder : IWsdlRetrieval
    {
        private const string METADATA_PATH = @"C:\temp";
        IWsdlRetrieval baseWsdlBuilder;

        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="baseWsdlRetrival">Existing WSDL Builder instance</param>
        public CustomWsdlBuilder(IWsdlRetrieval wsdlRetrieval)
        {
            // check for null and do other necessary validation
            this.baseWsdlBuilder = wsdlRetrieval;
        }

        /// <summary>
        /// Override the base WSDL to add some additional information that is
        /// not generated by the WSDL generated by the WCF LOB Adapter SDK.
        /// </summary>
        /// <param name="nodes">Selected operation nodes</param>
        /// <param name="uri">Address</param>
        /// <param name="timeout">Timeout value</param>
        /// <returns></returns>
        public WSDL.ServiceDescription GetWsdl(MetadataRetrievalNode[] nodes, Uri uri, TimeSpan timeout)
        {
            WSDL.ServiceDescription mywsdl = this.baseWsdlBuilder.GetWsdl(nodes, uri, timeout);
            mywsdl.Documentation = "This WSDL is generated from SampleAdapter on " + DateTime.Now + ".";
            return mywsdl;
        }
    }
}

To get the custom WSDL from the adapter, you can run svcutil.exe as follows:

Copy Code
svcutil /t:metadata "sample://localhost:10000/DB2OLEDB/AdventureWorks?Protocol=TCPIP&Driver=Test&wsdl&op=/Echo/EchoGreeting"

Scenario 2 - Use an Existing WSDL Document

The following illustration shows how to create a custom WSDL Builder that implements the IWsdlRetrieval interface to return a predefined WSDL to the consumer.

This can be useful when the adapter returns only a predefined list of operations with existing XML schema definitions to the client, and where it does not generate a contract dynamically based on selected operations.

If you are building a transport type adapter using the WCF LOB Adapter SDK, you may only need a set of generic operations. The ResolveOperationMetadata and ResolveTypeMetadata methods are irrelevant. The ResolveOperationMetadata and ResolveTypeMetadata provide alternate methods of generating the input and output XML schema messages for an operation, which in this case are already provided within the WSDL and hence not needed. The resolve methods of the IMetadataResolverHandler implementation are called by using

GetOperationDefinition and GetTypeDefinition methods.

Note
If you are providing a predefined WSDL for the adapter, it is not necessary to use the Add Adapter Service Reference Visual Studio Plug-in or the Consume Adapter Service BizTalk Project Add-in tools because the predefined WSDL Builder ignores the selected MetadataRetrievalNode nodes. In the IInboundHandler and IOutboundHandler implementations, if a predefined WSDL is provided (and IMetadataResolverHandler resolve operations are not implemented), the MetadataLookup class will not return OperationMetadata/TypeMetadata definitions for passed in WCF Message SOAP action.

Override the BuildWsdlRetrieval method of the Adapter derived class.

C# Copy Code
public class SampleAdapter : Adapter
{
    . . .
    protected override IWsdlRetrieval BuildWsdlRetrieval(MetadataLookup metadataLookup)
    {
            return new PredefinedWsdlBuilder(base.BuildWsdlRetrieval(metadataLookup));
    }
}

The following code example implements the IWsdlRetrieval interface to provide a custom WSDL Builder.

C# Copy Code
using System;
using Microsoft.ServiceModel.Channels;
using Microsoft.ServiceModel.Channels.Common;
using WSDL=System.Web.Services.Description;
using System.IO;

namespace My.Samples.CodeSnippets
{
    class PredefinedWsdlBuilder : IWsdlRetrieval
    {
        private const string METADATA_PATH = @"C:\temp";

        public PredefinedWsdlBuilder()
        {
        }

        public WSDL.ServiceDescription GetWsdl(MetadataRetrievalNode[] nodes, Uri uri, TimeSpan timeout)
        {
            // In this scenario, ignoring the nodes and returning a pre-built WSDL
            // and just returning a hard coded WSDL
            string[] wsdlFiles = wsdlFiles = Directory.GetFiles(METADATA_PATH, "SampleAdapterMetadata.wsdl");
            WSDL.ServiceDescription desc = WSDL.ServiceDescription.Read(wsdlFiles[0]);
            return desc;

        }
    }
}

Scenario 3 - Provide Your Own Implementation of WSDL Builder for Custom XML Schemas

You can implement your own WSDL Builder to provide custom XML schemas to OperationMetadata and TypeMetadata objects.

The following example doesn't use the base WSDL retrieval functionality. Instead, you are responsible for building the WSDL yourself by enumerating through the operation nodes provided by the consumer using the Add Adapter Service Reference Visual Studio Plug-in or the Consume Adapter Service BizTalk Project Add-in tools. You can use the GetOperationDefinition and GetTypeDefinition to resolve metadata or provide your own resolution mechanism for a passed-in operation node identifier.

Note
The base WSDL Builder provided by the WCF LOB Adapter SDK should be sufficient in most cases. We recommend to using the base functionality in most scenarios and accomplishing the XML schema contract extensibility by overriding ExportInputXmlSchema, ExportOutputXmlSchema and/or ExportXmlSchema methods.

The other option is to override the ExportInputXmlSchema/ExportOutputXmlSchema methods of the OperationMetadata subclasses and override ExportXmlSchema of the subclasses of TypeMetadata objects to provide the custom XML schema files. The following code example shows how to do that. The built-in WSDL Builder will call these methods in the adapter’s type model when building the final WSDL for the user.

Override the BuildWsdlRetrieval method of the Adapter derived class.

C# Copy Code
public class SampleAdapter : Adapter
{
    . . .
    protected override IWsdlRetrieval BuildWsdlRetrieval(MetadataLookup metadataLookup)
    {
         return new MyOwnWsdlBuilder(metadataLookup);
    }
}

The following code shows a sample implementation of this custom WSDL builder.

C# Copy Code
using WSDL = System.Web.Services.Description;
using System.Xml.Schema;
using System.Xml;
. . .

namespace My.Samples.CodeSnippets
{
    class MyOwnWsdlBuilder : IWsdlRetrieval
    {
        private MetadataLookup lookup;
        private WSDL.ServiceDescription sd;
        private string ns;
        private List<WSDL.PortType> portList;
        private XmlSchemaSet schemaSet;
        //To communicate the initial schema context from wsdl builder to Operation and Type Metadata
        XmlSchemaExportContext exportContext;
        public string DefaultMetadataNamespace = "http://myownwsdl";
        . . .

        public SampleWsdlBuilder(MetadataLookup lookup)
        {
            this.lookup = lookup;
            this.ns = "http://tempuri.org/ITypeTest/";
            this.schemaSet = new XmlSchemaSet();
            // add any dependent schemas in this schema set
            this.exportContext = new XmlSchemaExportContext(schemaSet, this.namespacePrefixList, this.DefaultMetadataNamespace);
            sd = new WSDL.ServiceDescription();
            sd.TargetNamespace = this.ns;
            portList = new List<WSDL.PortType>();
        }

        WSDL.ServiceDescription IWsdlRetrieval.GetWsdl(MetadataRetrievalNode[] nodes, Uri uri, TimeSpan timeout)
        {
            // enumerate through each node
            foreach (MetadataRetrievalNode node in nodes)
            {
                if (node.IsOperation)
                {
                    OperationMetadata opMetadata = lookup.GetOperationDefinition(node.NodeId, timeout);
                    // for each operation generate the XML Schema input / output message and other WSDL constructs
                    AddOperationSchema(opMetadata);
                }
            }

            // Enumerate the list of ports and add the ports with one or more operations
            foreach (WSDL.PortType port in portList)
            {
                if (port.Operations.Count != 0)
                    sd.PortTypes.Add(port);
            }

            // Enumerate the list of schemas (Import/Include) to add to the Wsdl
            foreach (XmlSchema schema in schemaSet.Schemas())
            {
                //to ensure that there are no preprocessing errors
                schemaSet.Reprocess(schema);
                sd.Types.Schemas.Add(schema);
            }

            // Compile the schema to check for errors
            // Note: an exception will be thrown if there are errors in schema
            schemaSet.Compile();
            return sd;
        }

        private void AddOperationSchema(OperationMetadata operationMetadata)
        {
            WSDL.PortType operationPort = null;
            string operationNamespace = String.IsNullOrEmpty(operationMetadata.OperationNamespace) ? this.DefaultMetadataNamespace : operationMetadata.OperationNamespace;

            // Add request and response operation schemas, along with the relevant types and array schemas
            operationMetadata.ExportInputXmlSchema(this.exportContext, this.lookup, TimeSpan.MaxValue);
            operationMetadata.ExportOutputXmlSchema(this.exportContext, this.lookup, TimeSpan.MaxValue);

            string namespacePrefix = this.exportContext.NamespacePrefixSet[operationNamespace];

            // Determine the port category
            GetOperationPort(ref operationPort, operationNamespace, namespacePrefix, operationMetadata.OperationGroup);

            // Now create operations and associated messages to add to the WSDL portType and
            WSDL.Operation operation = new WSDL.Operation();
            operation.Name = operationMetadata.DisplayName;
            WSDL.OperationMessage requestOperationMessage;
            WSDL.OperationMessage responseOperationMessage;
            WSDL.MessagePart part;
            WSDL.Message requestMessage;
            WSDL.Message responseMessage;

            // Build Request Message Section
            String inputMessageAction = operationMetadata.InputMessageAction;
            requestMessage = new WSDL.Message();
           // . . .
            sd.Messages.Add(requestMessage);
            operation.Messages.Add(requestOperationMessage);

            // Build Response Message Section
            responseMessage = new WSDL.Message();
            // Check for one-way operations - output message will be added only for two-way operations
            if (!operationMetadata.IsOneWay)
            {
                sd.Messages.Add(responseMessage);
                operation.Messages.Add(responseOperationMessage);
            }
            // Add the operation to the corresponding port

        }
    }
}

Remarks

You should implement this interface when your adapter requires control over Web Service Description Language (WSDL) generation. Custom implementations are returned in the BuildWsdlRetrieval method of the Adapter derived class.

There are three scenarios when you may want to provide a custom WSDL Builder.

  1. Extend the WSDL generated by the WCF LOB Adapter SDK.

  2. Use an existing WSDL document.

  3. Provide your own implementation of a WSDL Builder and not reuse the base WSDL Builder.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

IWsdlRetrieval Members
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
MetadataLookup


IWsdlRetrieval Members
See Also Methods
[image]

Supports the construction of custom WSDL. You need to implement this interface and override the BuildWsdlRetrieval method if you want to provide your own WSDL or modify the one generated by the WCF LOB Adapter SDK.

The following tables list the members exposed by the IWsdlRetrieval type.

Public Methods

 | Name | Description
public method | GetWsdl | Retrieves ServiceDescription (WSDL) for one or more operations for the provided system (URI).
Top

See Also

Reference

IWsdlRetrieval Interface
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
MetadataLookup


IWsdlRetrieval Methods
[image]

Public Methods

 | Name | Description
public method | GetWsdl | Retrieves ServiceDescription (WSDL) for one or more operations for the provided system (URI).

See Also

Reference

IWsdlRetrieval Interface
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
MetadataLookup


IWsdlRetrieval.GetWsdl Method
See Also Example
[image]

Retrieves ServiceDescription (WSDL) for one or more operations for the provided system (URI).

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As IWsdlRetrieval
Dim nodes As MetadataRetrievalNode()
Dim uri As Uri
Dim timeout As TimeSpan
Dim returnValue As ServiceDescription

returnValue = instance.GetWsdl(nodes, uri, timeout)

Syntax

Visual Basic
Function GetWsdl ( _
    nodes As MetadataRetrievalNode(), _
    uri As Uri, _
    timeout As TimeSpan _
) As ServiceDescription
C#
ServiceDescription GetWsdl (
    MetadataRetrievalNode[] nodes,
    Uri uri,
    TimeSpan timeout
)
C++
ServiceDescription^ GetWsdl (
    array<MetadataRetrievalNode^>^ nodes,
    Uri^ uri,
    TimeSpan timeout
)
J#
ServiceDescription GetWsdl (
    MetadataRetrievalNode[] nodes,
    Uri uri,
    TimeSpan timeout
)
JScript
function GetWsdl (
    nodes : MetadataRetrievalNode[],
    uri : Uri,
    timeout : TimeSpan
) : ServiceDescription

Parameters

nodes

One or more MetadataRetrievalNode objects specifying which metadata to use when generating WSDL.

uri

The URI for the target system to retrieve the WSDL for.

timeout

The maximum time to wait for completion of the operation.

Return Value

A ServiceDescription containing information for creating a WSDL.

Example

For examples of using this method, see IWsdlRetrieval.

Remarks

The WCF LOB Adapter SDK provides a base implementation of the IWsdlRetrieval interface. In most cases, the base GetWsdl functionality should be sufficient to resolve the metadata for passed in MetadataRetrievalNode operation nodes and return a ServiceDescription object to the client. The ServiceDescription is used by clients such as the Add Adapter Service Reference Visual Studio Plug-in, the Consume Adapter Service BizTalk Project Add-in, the MetadataRetrievalClient class, and the svcutil.exe tool to create metadata in the format desired by these clients. You can choose to provide your own implementation of this method for extensibility.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

IWsdlRetrieval Interface
IWsdlRetrieval Members
Microsoft.ServiceModel.Channels.Common Namespace
BuildWsdlRetrieval
GetMetadata


ListenerException Class
See Also Members
[image]

This exception is thrown when there is an error receiving a message in an inbound handler.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ListenerException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class ListenerException
    Inherits AdapterException
C#
[SerializableAttribute]
public class ListenerException : AdapterException
C++
[SerializableAttribute]
public ref class ListenerException : public AdapterException
J#
/** @attribute SerializableAttribute() */
public class ListenerException extends AdapterException
JScript
SerializableAttribute
public class ListenerException extends AdapterException

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
Microsoft.ServiceModel.Channels.Common.AdapterException
Microsoft.ServiceModel.Channels.Common.ListenerException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ListenerException Members
Microsoft.ServiceModel.Channels.Common Namespace
IInboundHandler


ListenerException Members
See Also Constructors Methods Properties
[image]

This exception is thrown when there is an error receiving a message in an inbound handler.

The following tables list the members exposed by the ListenerException type.

Public Constructors (see also Protected Constructors)

Name | Description
ListenerException | Overloaded. Initializes a new instance of the ListenerException class.
Top

Protected Constructors

Name | Description
ListenerException | Overloaded. Initializes a new instance of the ListenerException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

ListenerException Class
Microsoft.ServiceModel.Channels.Common Namespace
IInboundHandler


ListenerException Constructor
[image]

Initializes a new instance of the ListenerException class.

Overload List

Name | Description
ListenerException () | Initializes a new instance of the ListenerException class.
ListenerException (SerializationInfo, StreamingContext) | Initializes a new instance of the ListenerException class by using the specified serialization and context objects.
ListenerException (String) | Initializes a new instance of the ListenerException class by using the specified error message.
ListenerException (String, Exception) | Initializes a new instance of the ListenerException class by using the specified error message and inner Exception.

See Also

Reference

ListenerException Class
ListenerException Members
Microsoft.ServiceModel.Channels.Common Namespace


ListenerException Constructor ()
[image]

Initializes a new instance of the ListenerException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New ListenerException

Syntax

Visual Basic
Public Sub New
C#
public ListenerException ()
C++
public:
ListenerException ()
J#
public ListenerException ()
JScript
public function ListenerException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ListenerException Class
ListenerException Members
Microsoft.ServiceModel.Channels.Common Namespace


ListenerException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the ListenerException class by using the specified serialization and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New ListenerException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected ListenerException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
ListenerException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected ListenerException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function ListenerException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ListenerException Class
ListenerException Members
Microsoft.ServiceModel.Channels.Common Namespace


ListenerException Constructor (String)
[image]

Initializes a new instance of the ListenerException class by using the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New ListenerException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public ListenerException (
    string message
)
C++
public:
ListenerException (
    String^ message
)
J#
public ListenerException (
    String message
)
JScript
public function ListenerException (
    message : String
)

Parameters

message

The message that describes the error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ListenerException Class
ListenerException Members
Microsoft.ServiceModel.Channels.Common Namespace


ListenerException Constructor (String, Exception)
[image]

Initializes a new instance of the ListenerException class by using the specified error message and inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New ListenerException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public ListenerException (
    string message,
    Exception inner
)
C++
public:
ListenerException (
    String^ message,
    Exception^ inner
)
J#
public ListenerException (
    String message,
    Exception inner
)
JScript
public function ListenerException (
    message : String,
    inner : Exception
)

Parameters

message

The error message that explains the reason for this exception.

inner

The exception that is the cause of the current exception. If the inner parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ListenerException Class
ListenerException Members
Microsoft.ServiceModel.Channels.Common Namespace


ListenerException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

ListenerException Class
Microsoft.ServiceModel.Channels.Common Namespace
IInboundHandler


ListenerException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

ListenerException Class
Microsoft.ServiceModel.Channels.Common Namespace
IInboundHandler


MessageTraceRecord Class
See Also Example Members
[image]

Represents a message TraceRecord that can be used by the AdapterTrace class to trace adapter activity in a manner compliant with Windows Communication Foundation (WCF).

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MessageTraceRecord

Syntax

Visual Basic
Public NotInheritable Class MessageTraceRecord
    Inherits TraceRecord
C#
public sealed class MessageTraceRecord : TraceRecord
C++
public ref class MessageTraceRecord sealed : public TraceRecord
J#
public final class MessageTraceRecord extends TraceRecord
JScript
public final class MessageTraceRecord extends TraceRecord

Example

The following code example shows how to use this class.

C# Copy Code
SQLAdapterUtilities.Trace.Trace(System.Diagnostics.TraceEventType.Verbose, "http://Microsoft.Adapters.Samples.Sql/TraceCode/InputWcfMessage", "Input WCF Message", this, new MessageTraceRecord(message));

If tracing is enabled, the following trace entry will be generated for the preceding sample.

Copy Code
<E2ETraceEvent xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent">
  <System/>
  <ApplicationData>
    <TraceData>
      <DataItem>
        <TraceRecord Severity="Information" xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord">
          <TraceIdentifier>http://Microsoft.Adapters.Samples.Sql/TraceCode/InputWcfMessage</TraceIdentifier>
          <Description>Input WCF Message</Description>
          <AppDomain>TestSQLAdapter.exe</AppDomain>
          <Source>Microsoft.Adapters.Samples.Sql.SQLAdapterOutboundHandler/54890288</Source>
          <ExtendedData xmlns="http://schemas.microsoft.com/servicemodel/adapters/MessageTraceRecord">
            <MessageHeaders>
              <Action p4:mustUnderstand="1" xmlns:p4="http://www.w3.org/2003/05/soap-envelope" xmlns="http://www.w3.org/2005/08/addressing">localhost/adventureworks/StoredProcedures/dbo/uspGetEmployeeManagers</Action>
              <MessageID xmlns="http://www.w3.org/2005/08/addressing">urn:uuid:5b1b0de9-aa35-4fb1-9b1b-ce87e103b742</MessageID>
              <ReplyTo xmlns="http://www.w3.org/2005/08/addressing">
                <Address>http://www.w3.org/2005/08/addressing/anonymous</Address>
              </ReplyTo>
            </MessageHeaders>
          </ExtendedData>
        </TraceRecord>
      </DataItem>
    </TraceData>
  </ApplicationData>
</E2ETraceEvent>

Remarks

Note
The message body is not traced.

The MessageTraceRecord class inherits from the TraceRecord class. See the example section in the TraceRecord class for how to use a custom trace record to trace extra information.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TraceRecord
Microsoft.ServiceModel.Channels.Common.MessageTraceRecord

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MessageTraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace


MessageTraceRecord Members
See Also Constructors Methods
[image]

Represents a message TraceRecord that can be used by the AdapterTrace class to trace adapter activity in a manner compliant with Windows Communication Foundation (WCF).

The following tables list the members exposed by the MessageTraceRecord type.

Public Constructors

Name | Description
MessageTraceRecord | Initializes a new instance of the MessageTraceRecord class using the specified Message.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

MessageTraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace


MessageTraceRecord Constructor
See Also Example
[image]

Initializes a new instance of the MessageTraceRecord class using the specified Message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As Message

Dim instance As New MessageTraceRecord(message)

Syntax

Visual Basic
Public Sub New ( _
    message As Message _
)
C#
public MessageTraceRecord (
    Message message
)
C++
public:
MessageTraceRecord (
    Message^ message
)
J#
public MessageTraceRecord (
    Message message
)
JScript
public function MessageTraceRecord (
    message : Message
)

Parameters

message

The Message which requires the trace information.

Example

See MessageTraceRecord for an example of using this constructor.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MessageTraceRecord Class
MessageTraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace


MessageTraceRecord Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

MessageTraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace


MessageTraceRecord Properties
[image]

See Also

Reference

MessageTraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace


MessagingSettings Class
See Also Members
[image]

Encapsulates the settings that control the Adapter messaging.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MessagingSettings

Syntax

Visual Basic
Public NotInheritable Class MessagingSettings
C#
public sealed class MessagingSettings
C++
public ref class MessagingSettings sealed
J#
public final class MessagingSettings
JScript
public final class MessagingSettings

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MessagingSettings

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MessagingSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


MessagingSettings Members
See Also Methods Properties
[image]

Encapsulates the settings that control the Adapter messaging.

The following tables list the members exposed by the MessagingSettings type.

Public Properties

 | Name | Description
public property | StampAddressOfInboundMessage | Gets or sets a Boolean value that indicates whether the inbound message should be stamped with the address of the receiving location.
public property | SupportedInboundChannels | Gets or sets a SupportedInboundChannels value that indicates the inbound channel types supported by the adapter.
public property | SupportsTransactedInbound | Gets or sets a Boolean value that indicates whether the adapter supports transacted inbound where the TryReceive will be called in the context of a transaction initiated by the WCF dispatcher.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | Creates a deep copy of the current MessagingSettings object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

MessagingSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


MessagingSettings Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | Creates a deep copy of the current MessagingSettings object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

MessagingSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


MessagingSettings.Clone Method
[image]

Creates a deep copy of the current MessagingSettings object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MessagingSettings
Dim returnValue As MessagingSettings

returnValue = instance.Clone

Syntax

Visual Basic
Public Function Clone As MessagingSettings
C#
public MessagingSettings Clone ()
C++
public:
MessagingSettings^ Clone ()
J#
public MessagingSettings Clone ()
JScript
public function Clone () : MessagingSettings

Return Value

A MessagingSettings object containing a deep copy of the original.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MessagingSettings Class
MessagingSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


MessagingSettings Properties
[image]

Public Properties

 | Name | Description
public property | StampAddressOfInboundMessage | Gets or sets a Boolean value that indicates whether the inbound message should be stamped with the address of the receiving location.
public property | SupportedInboundChannels | Gets or sets a SupportedInboundChannels value that indicates the inbound channel types supported by the adapter.
public property | SupportsTransactedInbound | Gets or sets a Boolean value that indicates whether the adapter supports transacted inbound where the TryReceive will be called in the context of a transaction initiated by the WCF dispatcher.

See Also

Reference

MessagingSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


MessagingSettings.StampAddressOfInboundMessage Property
[image]

Gets or sets a Boolean value that indicates whether the inbound message should be stamped with the address of the receiving location.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MessagingSettings
Dim value As Boolean

value = instance.StampAddressOfInboundMessage

instance.StampAddressOfInboundMessage = value

Syntax

Visual Basic
Public Property StampAddressOfInboundMessage As Boolean
C#
public bool StampAddressOfInboundMessage { get; set; }
C++
public:
property bool StampAddressOfInboundMessage {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_StampAddressOfInboundMessage ()

/** @property */
public void set_StampAddressOfInboundMessage (boolean value)
JScript
public function get StampAddressOfInboundMessage () : boolean

public function set StampAddressOfInboundMessage (value : boolean)

Property Value

true to stamp inbound messages; otherwise, false. The default value is true.

Remarks

The address of the receiving relocation is equivalent to the "To" value in the URI.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MessagingSettings Class
MessagingSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


MessagingSettings.SupportedInboundChannels Property
[image]

Gets or sets a SupportedInboundChannels value that indicates the inbound channel types supported by the adapter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MessagingSettings
Dim value As SupportedInboundChannels

value = instance.SupportedInboundChannels

instance.SupportedInboundChannels = value

Syntax

Visual Basic
Public Property SupportedInboundChannels As SupportedInboundChannels
C#
public SupportedInboundChannels SupportedInboundChannels { get; set; }
C++
public:
property SupportedInboundChannels SupportedInboundChannels {
    SupportedInboundChannels get ();
    void set (SupportedInboundChannels value);
}
J#
/** @property */
public SupportedInboundChannels get_SupportedInboundChannels ()

/** @property */
public void set_SupportedInboundChannels (SupportedInboundChannels value)
JScript
public function get SupportedInboundChannels () : SupportedInboundChannels

public function set SupportedInboundChannels (value : SupportedInboundChannels)

Property Value

Returns SupportedInboundChannels.

Remarks

This value should be set to IInputChannel or IInputSessionChannel if an adapter with the value of SupportsTransactedInbound set to true will be used with BizTalk Server.

Note
BizTalk server attempts to use two-way channels if they are available, however when using dispatcher-initiated transactions the transaction is only available for one-way channels. Setting SupportedInboundChannels to IInputChannel or IInputSessionChannel instructs BizTalk to use the one-way channel.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MessagingSettings Class
MessagingSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


MessagingSettings.SupportsTransactedInbound Property
[image]

Gets or sets a Boolean value that indicates whether the adapter supports transacted inbound where the TryReceive will be called in the context of a transaction initiated by the WCF dispatcher.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MessagingSettings
Dim value As Boolean

value = instance.SupportsTransactedInbound

instance.SupportsTransactedInbound = value

Syntax

Visual Basic
Public Property SupportsTransactedInbound As Boolean
C#
public bool SupportsTransactedInbound { get; set; }
C++
public:
property bool SupportsTransactedInbound {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_SupportsTransactedInbound ()

/** @property */
public void set_SupportsTransactedInbound (boolean value)
JScript
public function get SupportsTransactedInbound () : boolean

public function set SupportsTransactedInbound (value : boolean)

Property Value

true if transacted inbound messages are supported; otherwise, false. The default value is false.

Remarks

There are two ways to provide transaction support within the adapter inbound message exchange handler, dispatcher-initiated transactions and adapter-initiated transactions. If this setting is true, the transactions will be dispatcher-initiated; otherwise, the transactions will be adapter-initiated.

Dispatcher-initiated transactions

If this setting is set to true, the transactions will be initiated by the WCF dispatcher. Hence, they are called dispatcher-initiated transactions.

  • The adapter developer's implementation for TryReceive method will always be called in the context of a transaction.

  • If the host is not using the WCF dispatcher, but using channel level programming for pulling the messages, it should honor the TransactedReceiveEnabled on the WCF Binding and should all the Receive method of the IInputChannel interface or the ReceiveRequest method of the IReplyChannel in a transaction context.

  • The Current in the IInboundHandler.TryReceive will be committed after the dispatcher dispatches the messages submitted by the adapter to the service implementation.

  • WCF creates a new transaction for each IInputChannel.Receive call by default. Spanning a transaction across multiple receives is up to the service host and not determined by the adapter developer.

Adapter-initiated transactions

If this setting is set to false, the transactions need to be initiated by the adapter. In other words, before returning a message in IInboundHandler.TryReceive, you need to attach a transaction with the message by calling the Set method of the TransactionMessageProperty class. WCF dispatcher will first create a non-blocking (rollback) dependent clone from the transaction that the adapter developer sets on the message. Then it will dispatch the message to the service implementation.

  • This type of transaction can only work with two-way messaging (e.g. Reply Channel) models because the adapter has to wait for the reply message to come from the service implementation before the adapter can commit the original transaction to make sure that the dependent transaction created by the dispatcher has been completed. If the adapter tried to commit the transaction before the dependent transaction is completed (i.e. dispatched to the service), it will directly abort.

  • You can have one transaction and set it to the multiple messages and dependent clones will be created for each message by the dispatcher.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MessagingSettings Class
MessagingSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
IInboundHandler


MetadataException Class
See Also Members
[image]

The exception that is thrown when there is an error during metadata retrieval, browse, or search.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class MetadataException
    Inherits AdapterException
C#
[SerializableAttribute]
public class MetadataException : AdapterException
C++
[SerializableAttribute]
public ref class MetadataException : public AdapterException
J#
/** @attribute SerializableAttribute() */
public class MetadataException extends AdapterException
JScript
SerializableAttribute
public class MetadataException extends AdapterException

Remarks

You should throw this exception if there is an error in the implementations of IMetadataBrowseHandler, IMetadataSearchHandler, or IMetadataResolverHandler.

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
Microsoft.ServiceModel.Channels.Common.AdapterException
Microsoft.ServiceModel.Channels.Common.MetadataException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataException Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataException Members
See Also Constructors Methods Properties
[image]

The exception that is thrown when there is an error during metadata retrieval, browse, or search.

The following tables list the members exposed by the MetadataException type.

Public Constructors (see also Protected Constructors)

Name | Description
MetadataException | Overloaded. Initializes a new instance of the MetadataException class.
Top

Protected Constructors

Name | Description
MetadataException | Overloaded. Initializes a new instance of the MetadataException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

MetadataException Class
Microsoft.ServiceModel.Channels.Common Namespace


MetadataException Constructor
[image]

Initializes a new instance of the MetadataException class.

Overload List

Name | Description
MetadataException () | Initializes a new instance of the MetadataException class.
MetadataException (SerializationInfo, StreamingContext) | Initializes a new instance of the MetadataException class by using the specified serialization and context objects.
MetadataException (String) | Initializes a new instance of the MetadataException class by using the specified error message.
MetadataException (String, Exception) | Initializes a new instance of the MetadataException class by using the specified error message and inner Exception.

See Also

Reference

MetadataException Class
MetadataException Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataException Constructor ()
[image]

Initializes a new instance of the MetadataException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New MetadataException

Syntax

Visual Basic
Public Sub New
C#
public MetadataException ()
C++
public:
MetadataException ()
J#
public MetadataException ()
JScript
public function MetadataException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataException Class
MetadataException Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the MetadataException class by using the specified serialization and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New MetadataException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected MetadataException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
MetadataException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected MetadataException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function MetadataException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataException Class
MetadataException Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataException Constructor (String)
[image]

Initializes a new instance of the MetadataException class by using the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New MetadataException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public MetadataException (
    string message
)
C++
public:
MetadataException (
    String^ message
)
J#
public MetadataException (
    String message
)
JScript
public function MetadataException (
    message : String
)

Parameters

message

The message that describes an error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataException Class
MetadataException Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataException Constructor (String, Exception)
[image]

Initializes a new instance of the MetadataException class by using the specified error message and inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New MetadataException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public MetadataException (
    string message,
    Exception inner
)
C++
public:
MetadataException (
    String^ message,
    Exception^ inner
)
J#
public MetadataException (
    String message,
    Exception inner
)
JScript
public function MetadataException (
    message : String,
    inner : Exception
)

Parameters

message

The error message that explains the reason for the exception.

inner

The exception that is the cause of the current exception. If the inner parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataException Class
MetadataException Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

MetadataException Class
Microsoft.ServiceModel.Channels.Common Namespace


MetadataException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

MetadataException Class
Microsoft.ServiceModel.Channels.Common Namespace


MetadataLookup Class
See Also Members
[image]

Represents a view over the adapter metadata cache. This class is used to look up operation metadata definitions required at runtime.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataLookup

Syntax

Visual Basic
Public NotInheritable Class MetadataLookup
C#
public sealed class MetadataLookup
C++
public ref class MetadataLookup sealed
J#
public final class MetadataLookup
JScript
public final class MetadataLookup

Remarks

Typically in WCF binding at runtime the channel stack is only aware of the WCF message. The provides a way to look up the associated metadata for the incoming XML message using SOAP Action found in WCF message header as the key.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MetadataLookup

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataLookup Members
Microsoft.ServiceModel.Channels.Common Namespace
MetadataRetrievalClient


MetadataLookup Members
See Also Methods
[image]

Represents a view over the adapter metadata cache. This class is used to look up operation metadata definitions required at runtime.

The following tables list the members exposed by the MetadataLookup type.

Public Methods (see also Protected Methods)

 | Name | Description
public method | Browse | Retrieves an array of MetadataRetrievalNode objects from the cache.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetOperationDefinition | Retrieves the operation metadata definition using an operation identifier.
public method | GetOperationDefinitionFromInputMessageAction | Gets the operation definition for the specified input message SOAP Action from the cache.
public method | GetOperationDefinitionFromOutputMessageAction | Gets the operation definition for the specified output message SOAP Action from the cache.
public method | GetType | (inherited from Object)
public method | GetTypeDefinition | Retrieves the type metadata definition by using a type identifier.
public method | Search | Retrieves an array of MetadataRetrievalNode objects from the cache.
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

MetadataLookup Class
Microsoft.ServiceModel.Channels.Common Namespace
MetadataRetrievalClient


MetadataLookup Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Browse | Retrieves an array of MetadataRetrievalNode objects from the cache.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetOperationDefinition | Retrieves the operation metadata definition using an operation identifier.
public method | GetOperationDefinitionFromInputMessageAction | Gets the operation definition for the specified input message SOAP Action from the cache.
public method | GetOperationDefinitionFromOutputMessageAction | Gets the operation definition for the specified output message SOAP Action from the cache.
public method | GetType | (inherited from Object)
public method | GetTypeDefinition | Retrieves the type metadata definition by using a type identifier.
public method | Search | Retrieves an array of MetadataRetrievalNode objects from the cache.
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

MetadataLookup Class
Microsoft.ServiceModel.Channels.Common Namespace
MetadataRetrievalClient


MetadataLookup.Browse Method
See Also Example
[image]

Retrieves an array of MetadataRetrievalNode objects from the cache.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataLookup
Dim nodeId As String
Dim childStartIndex As Integer
Dim maxChildNodes As Integer
Dim timeout As TimeSpan
Dim returnValue As MetadataRetrievalNode()

returnValue = instance.Browse(nodeId, childStartIndex, maxChildNodes, timeout)

Syntax

Visual Basic
Public Function Browse ( _
    nodeId As String, _
    childStartIndex As Integer, _
    maxChildNodes As Integer, _
    timeout As TimeSpan _
) As MetadataRetrievalNode()
C#
public MetadataRetrievalNode[] Browse (
    string nodeId,
    int childStartIndex,
    int maxChildNodes,
    TimeSpan timeout
)
C++
public:
array<MetadataRetrievalNode^>^ Browse (
    String^ nodeId,
    int childStartIndex,
    int maxChildNodes,
    TimeSpan timeout
)
J#
public MetadataRetrievalNode[] Browse (
    String nodeId,
    int childStartIndex,
    int maxChildNodes,
    TimeSpan timeout
)
JScript
public function Browse (
    nodeId : String,
    childStartIndex : int,
    maxChildNodes : int,
    timeout : TimeSpan
) : MetadataRetrievalNode[]

Parameters

nodeId

The Id of the node required to browse its children.

childStartIndex

The index of the first child to return.

maxChildNodes

The maximum number of children to return.

timeout

The maximum time to wait for the completion of the operation.

Return Value

An array of MetadataRetrievalNode objects that represents the children of the supplied node satisfying the parameters' conditions.

Example

For an example on how to use the Browse method, see Browse.

Remarks

This method will return nodes starting from the childStartIndex in the path provided in absoluteName, and the number of nodes returned is limited by maxChildNodes.

If absoluteName is null or an empty string, this method will return nodes starting from the root + childStartIndex.

If childStartIndex is zero, this method will return starting at the node indicated by absoluteName. (Or the root node if absoluteName is null or an empty string.)

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataLookup Class
MetadataLookup Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataLookup.GetOperationDefinition Method
See Also Example
[image]

Retrieves the operation metadata definition using an operation identifier.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataLookup
Dim operationId As String
Dim timeout As TimeSpan
Dim returnValue As OperationMetadata

returnValue = instance.GetOperationDefinition(operationId, timeout)

Syntax

Visual Basic
Public Function GetOperationDefinition ( _
    operationId As String, _
    timeout As TimeSpan _
) As OperationMetadata
C#
public OperationMetadata GetOperationDefinition (
    string operationId,
    TimeSpan timeout
)
C++
public:
OperationMetadata^ GetOperationDefinition (
    String^ operationId,
    TimeSpan timeout
)
J#
public OperationMetadata GetOperationDefinition (
    String operationId,
    TimeSpan timeout
)
JScript
public function GetOperationDefinition (
    operationId : String,
    timeout : TimeSpan
) : OperationMetadata

Parameters

operationId

The operationId to get its definition.

timeout

The maximum time to wait for the completion of the operation.

Return Value

An OperationMetadata for the specified operationId.

Example

The following code example shows how to use this class.

C# Copy Code
public class SampleAdapterOutboundHandler : IOutboundHandler
{
    /// <summary>
    /// Executes the request message on the target system and returns a response message.
    /// If there isn’t a response, this method should return null
    /// </summary>
    public Message Execute(Message message, TimeSpan timeout)
    {
        // Get the OperationMetadata definition for this incoming operation
        OperationMetadata om = this.MetadataLookup.GetOperationDefinition(message.Headers.Action, timeout);
        if (om == null)
        {
            // This means there is no metadata information defined in the
            // adapter. Some processing can be done here if the adapter doesn't really care
            // about the incoming message and just wants to work with the
            // SOAP message as a whole without having to look into the payload.
            SampleAdapterUtilities.Trace.Trace(TraceEventType.Error, "SampleAdapterOutboundHandler::execute", "Unknown operation " + message.Headers.Action);
            throw new UnsupportedOperationException("This adapter doesn't understand the operation " + message.Headers.Action);
        }

        // The adapter understands the metadata for the incoming
        // XML message. The processing of this method may require
        // referring to this metadata, for example, figuring out what
        // back-end function to call and mapping individual XML
        // elements to the target system form

        // Generate response
        StringBuilder outputString = new StringBuilder();
        XmlReader replyReader = XmlReader.Create(new StringReader(outputString.ToString()));
        // Use the operation metadata to retrieve the expected output message action
        Message replymessage = Message.CreateMessage(MessageVersion.Default, om.OutputMessageAction, replyReader);
        return replymessage.
    }
}

Remarks

The operation identifier is provided when creating OperationMetadata within the implementation of the IMetadataResolverHandler interface.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataLookup Class
MetadataLookup Members
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
Execute
TryReceive


MetadataLookup.GetOperationDefinitionFromInputMessageAction Method
See Also Example
[image]

Gets the operation definition for the specified input message SOAP Action from the cache.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataLookup
Dim action As String
Dim timeout As TimeSpan
Dim returnValue As OperationMetadata

returnValue = instance.GetOperationDefinitionFromInputMessageAction(action, timeout)

Syntax

Visual Basic
Public Function GetOperationDefinitionFromInputMessageAction ( _
    action As String, _
    timeout As TimeSpan _
) As OperationMetadata
C#
public OperationMetadata GetOperationDefinitionFromInputMessageAction (
    string action,
    TimeSpan timeout
)
C++
public:
OperationMetadata^ GetOperationDefinitionFromInputMessageAction (
    String^ action,
    TimeSpan timeout
)
J#
public OperationMetadata GetOperationDefinitionFromInputMessageAction (
    String action,
    TimeSpan timeout
)
JScript
public function GetOperationDefinitionFromInputMessageAction (
    action : String,
    timeout : TimeSpan
) : OperationMetadata

Parameters

action

The input message SOAP Action to get its operation definition.

timeout

The maximum time to wait for the completion of the operation.

Return Value

An OperationMetadata for the operation with the specified input message SOAP Action.

Example

For an example on how to use this method, see the example section of the GetOperationDefinition method.

Remarks

If the WCF LOB Adapter SDK metadata object model is used to define metadata, the InputMessageAction equates to UniqueId. Consider an operation metadata with operation identifier "/Echo/EchoString". The InputMessageAction is set to "/Echo/EchoString" by the SDK.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataLookup Class
MetadataLookup Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataLookup.GetOperationDefinitionFromOutputMessageAction Method
See Also Example
[image]

Gets the operation definition for the specified output message SOAP Action from the cache.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataLookup
Dim action As String
Dim timeout As TimeSpan
Dim returnValue As OperationMetadata

returnValue = instance.GetOperationDefinitionFromOutputMessageAction(action, timeout)

Syntax

Visual Basic
Public Function GetOperationDefinitionFromOutputMessageAction ( _
    action As String, _
    timeout As TimeSpan _
) As OperationMetadata
C#
public OperationMetadata GetOperationDefinitionFromOutputMessageAction (
    string action,
    TimeSpan timeout
)
C++
public:
OperationMetadata^ GetOperationDefinitionFromOutputMessageAction (
    String^ action,
    TimeSpan timeout
)
J#
public OperationMetadata GetOperationDefinitionFromOutputMessageAction (
    String action,
    TimeSpan timeout
)
JScript
public function GetOperationDefinitionFromOutputMessageAction (
    action : String,
    timeout : TimeSpan
) : OperationMetadata

Parameters

action

The output SOAP Action to get its operation definition.

timeout

The maximum time to wait for the completion of the operation.

Return Value

An OperationMetadata for the operation with the specified output message SOAP Action.

Example

For examples on how to use this method, see the example section of the GetOperationDefinition method.

Remarks

If the WCF LOB Adapter SDK metadata object model is used to define metadata, the OutputMessageAction equates to UniqueId appended with "/response". Suppose an operation metadata with operation identifier is "/Echo/EchoString" and the InputMessageAction is "/Echo/EchoString", the OutputMessageAction would be "/Echo/EchoString/response".

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataLookup Class
MetadataLookup Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataLookup.GetTypeDefinition Method
See Also Example
[image]

Retrieves the type metadata definition by using a type identifier.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataLookup
Dim typeId As String
Dim timeout As TimeSpan
Dim returnValue As TypeMetadata

returnValue = instance.GetTypeDefinition(typeId, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Function GetTypeDefinition ( _
    typeId As String, _
    timeout As TimeSpan _
) As TypeMetadata
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public TypeMetadata GetTypeDefinition (
    string typeId,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
TypeMetadata^ GetTypeDefinition (
    String^ typeId,
    TimeSpan timeout
)
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public TypeMetadata GetTypeDefinition (
    String typeId,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public function GetTypeDefinition (
    typeId : String,
    timeout : TimeSpan
) : TypeMetadata

Parameters

typeId

The typeId to get its definition.

timeout

The maximum time to wait for the completion of the operation.

Return Value

A TypeMetadata for the specified typeId.

Example

C# Copy Code
public class SampleAdapterOutboundHandler : IOutboundHandler
{

    /// <summary>
    /// Executes the request message on the target system and returns a response message.
    /// If there isn’t a response, this method should return null
    /// </summary>
    public Message Execute(Message message, TimeSpan timeout)
    {
        // . . .

        MyCustomTypeMetadata typeMetadata = (MyCustomTypeMetadata)this.MetadataLookup.GetTypeDefinition("Types.MyCustomType", timeout);

        // use MyCustomTypeMetadata to get some design-time info

        // . . .

    }
}

Remarks

The operation identifier is provided when creating TypeMetadata within the IMetadataResolverHandler implementation.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataLookup Class
MetadataLookup Members
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
Execute
TryReceive


MetadataLookup.Search Method
See Also Example
[image]

Retrieves an array of MetadataRetrievalNode objects from the cache.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataLookup
Dim nodeId As String
Dim searchCriteria As String
Dim maxChildNodes As Integer
Dim timeout As TimeSpan
Dim returnValue As MetadataRetrievalNode()

returnValue = instance.Search(nodeId, searchCriteria, maxChildNodes, timeout)

Syntax

Visual Basic
Public Function Search ( _
    nodeId As String, _
    searchCriteria As String, _
    maxChildNodes As Integer, _
    timeout As TimeSpan _
) As MetadataRetrievalNode()
C#
public MetadataRetrievalNode[] Search (
    string nodeId,
    string searchCriteria,
    int maxChildNodes,
    TimeSpan timeout
)
C++
public:
array<MetadataRetrievalNode^>^ Search (
    String^ nodeId,
    String^ searchCriteria,
    int maxChildNodes,
    TimeSpan timeout
)
J#
public MetadataRetrievalNode[] Search (
    String nodeId,
    String searchCriteria,
    int maxChildNodes,
    TimeSpan timeout
)
JScript
public function Search (
    nodeId : String,
    searchCriteria : String,
    maxChildNodes : int,
    timeout : TimeSpan
) : MetadataRetrievalNode[]

Parameters

nodeId

The ID of the node to start searching from.

searchCriteria

The adapter-specific search criteria.

maxChildNodes

The maximum number of result nodes to return.

timeout

The maximum time to wait for the completion of the operation.

Return Value

An array of MetadataRetrievalNode objects that represent the search result.

Example

For examples on how to use this method, see the example section of the Search method.

Remarks

The search will begin at the path provided in absoluteName, which points to a location in the tree of metadata nodes.

The contents of the array are filtered by SearchCriteria and the number of nodes returned is limited by maxChildNodes.

If absoluteName is null or an empty string, this method will return nodes starting from the root.

If SearchCriteria is null or an empty string, this method will return all nodes.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataLookup Class
MetadataLookup Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataSettings Class
See Also Members
[image]

Represents a class that contains settings that control the adapter metadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataSettings

Syntax

Visual Basic
Public NotInheritable Class MetadataSettings
C#
public sealed class MetadataSettings
C++
public ref class MetadataSettings sealed
J#
public final class MetadataSettings
JScript
public final class MetadataSettings

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MetadataSettings

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


MetadataSettings Members
See Also Methods Properties
[image]

Represents a class that contains settings that control the adapter metadata.

The following tables list the members exposed by the MetadataSettings type.

Public Properties

 | Name | Description
public property | CompileWsdl | Gets or sets a Boolean value that indicates whether to compile the WSDL before returning a ServiceDescription from GetMetadata.
public property | DefaultMetadataNamespace | Gets or sets the default metadata namespace used in building the WSDL schemas in case the operation metadata or type metadata does not have a namespace.
public property | GenerateWsdlDocumentation | Gets or sets a Boolean value that indicates whether to generate WSDL documentation from the metadata description.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | Creates a deep copy of the current MetadataSettings object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

MetadataSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


MetadataSettings Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Clone | Creates a deep copy of the current MetadataSettings object.
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

MetadataSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


MetadataSettings.Clone Method
[image]

Creates a deep copy of the current MetadataSettings object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataSettings
Dim returnValue As MetadataSettings

returnValue = instance.Clone

Syntax

Visual Basic
Public Function Clone As MetadataSettings
C#
public MetadataSettings Clone ()
C++
public:
MetadataSettings^ Clone ()
J#
public MetadataSettings Clone ()
JScript
public function Clone () : MetadataSettings

Return Value

A deep copy of the current MetadataSettings object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataSettings Class
MetadataSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataSettings Properties
[image]

Public Properties

 | Name | Description
public property | CompileWsdl | Gets or sets a Boolean value that indicates whether to compile the WSDL before returning a ServiceDescription from GetMetadata.
public property | DefaultMetadataNamespace | Gets or sets the default metadata namespace used in building the WSDL schemas in case the operation metadata or type metadata does not have a namespace.
public property | GenerateWsdlDocumentation | Gets or sets a Boolean value that indicates whether to generate WSDL documentation from the metadata description.

See Also

Reference

MetadataSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterSettings


MetadataSettings.CompileWsdl Property
[image]

Gets or sets a Boolean value that indicates whether to compile the WSDL before returning a ServiceDescription from GetMetadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataSettings
Dim value As Boolean

value = instance.CompileWsdl

instance.CompileWsdl = value

Syntax

Visual Basic
Public Property CompileWsdl As Boolean
C#
public bool CompileWsdl { get; set; }
C++
public:
property bool CompileWsdl {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_CompileWsdl ()

/** @property */
public void set_CompileWsdl (boolean value)
JScript
public function get CompileWsdl () : boolean

public function set CompileWsdl (value : boolean)

Property Value

true if the WSDL should be compiled; otherwise false. The default value is true.

Remarks

Set to false if the adapter returns a StrongDataSetType.

Note
When set to true, XmlSchemaSet::Compile is used to detect errors in the WSDL structure before returning the WSDL. When set to false, XmlSchemaSet::Compile will not be used, and errors will be caught when generating a proxy from the WSDL by using a utility such as svcutil.exe.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataSettings Class
MetadataSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


MetadataSettings.DefaultMetadataNamespace Property
See Also Example
[image]

Gets or sets the default metadata namespace used in building the WSDL schemas in case the operation metadata or type metadata does not have a namespace.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataSettings
Dim value As String

value = instance.DefaultMetadataNamespace

instance.DefaultMetadataNamespace = value

Syntax

Visual Basic
Public Property DefaultMetadataNamespace As String
C#
public string DefaultMetadataNamespace { get; set; }
C++
public:
property String^ DefaultMetadataNamespace {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_DefaultMetadataNamespace ()

/** @property */
public void set_DefaultMetadataNamespace (String value)
JScript
public function get DefaultMetadataNamespace () : String

public function set DefaultMetadataNamespace (value : String)

Property Value

A string that contains the default metadata namespace. The default value is String.Empty; it cannot be null.

Example

The following code example provides a sample metadata for operation /Calculator/Add in the ResolveOperationMetadata implementation.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Calculator/Add":
            // Syntax: double Add(double n1, double n2)
            opMetadata.OperationNamespace = "http://MySampleOpNamespace";
            opMetadata.DisplayName = "Add";
            opMetadata.Description = "Sample documentation for add operation.";
            // Create Parameters
            OperationParameter n1 = new OperationParameter("n1", OperationParameterDirection.In, QualifiedType.DoubleType, false);
            n1.IsOptional = false;
            n1.Description = "First number to add.";
            OperationParameter n2 = new OperationParameter("n2", OperationParameterDirection.In, QualifiedType.DoubleType, false);
            n2.IsOptional = false;
            n2.Description = "Second number to add.";
            opMetadata.Parameters.Add(n1);
            opMetadata.Parameters.Add(n2);
            // Create Result
            opMetadata.OperationResult = new OperationResult(QualifiedType.DoubleType, false);
            break;

        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the selected WSDL generated using the code above. See the targetNamespace defined in the <xsd:schema> for "Add" operation.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="http://MySampleOpNamespace" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://MySampleOpNamespace" version="1.0">
      . . .
    </xsd:schema>
  </wsdl:types>
  <wsdl:message> …   </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="Add"> . . .     </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

If OperationNamespace or TypeNamespace in the IMetadataResolverHandler implementation is empty or null, this default namespace is used for XML schema definition in the WSDL.

Note
If a namespace is not provided for OperationMetadata and/or TypeMetadata and this property is Empty, the internal WSDL Builder uses the Scheme as the namespace.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataSettings Class
MetadataSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
IWsdlRetrieval


MetadataSettings.GenerateWsdlDocumentation Property
See Also Example
[image]

Gets or sets a Boolean value that indicates whether to generate WSDL documentation from the metadata description.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataSettings
Dim value As Boolean

value = instance.GenerateWsdlDocumentation

instance.GenerateWsdlDocumentation = value

Syntax

Visual Basic
Public Property GenerateWsdlDocumentation As Boolean
C#
public bool GenerateWsdlDocumentation { get; set; }
C++
public:
property bool GenerateWsdlDocumentation {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_GenerateWsdlDocumentation ()

/** @property */
public void set_GenerateWsdlDocumentation (boolean value)
JScript
public function get GenerateWsdlDocumentation () : boolean

public function set GenerateWsdlDocumentation (value : boolean)

Property Value

true if WSDL documentation should be generated; otherwise false. The default value is true.

Example

The following code example provides a sample metadata for operation /Calculator/Add in the ResolveOperationMetadata implementation.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Calculator/Add":
            // Syntax: double Add(double n1, double n2)
            opMetadata.DisplayName = "Add";
            opMetadata.Description = "Sample documentation for add operation.";
            // Create Parameters
            OperationParameter n1 = new OperationParameter("n1", OperationParameterDirection.In, QualifiedType.DoubleType, false);
            n1.IsOptional = false;
            n1.Description = "First number to add.";
            OperationParameter n2 = new OperationParameter("n2", OperationParameterDirection.In, QualifiedType.DoubleType, false);
            n2.IsOptional = false;
            n2.Description = "Second number to add.";
            opMetadata.Parameters.Add(n1);
            opMetadata.Parameters.Add(n2);
            // Create Result
            opMetadata.OperationResult = new OperationResult(QualifiedType.DoubleType, false);
            break;

        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is a sample file from generated WSDL, if this property is set to true.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions>
  <wsdl:types> ... </wsdl:types>
  <wsdl:message name="SampleContract_Add_InputMessage">
    <wsdl:part name="parameters" element="ns2:Add" />
  </wsdl:message>
  <wsdl:message name="SampleContract_Add_OutputMessage">
    <wsdl:part name="parameters" element="ns2:AddResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="Add">

      <wsdl:documentation>
        <doc:adapterOperationDocumentation>
          <doc:summary>Sample documentation for add operation.</doc:summary>
          <doc:param name="n1">First number to add.</doc:param>
          <doc:param name="n2">Second number to add.</doc:param>
          <doc:returns></doc:returns>
        </doc:adapterOperationDocumentation>
      </wsdl:documentation>

      <wsdl:input wsaw:Action="/Calculator/Add" message="ns2:SampleContract_Add_InputMessage" />
      <wsdl:output wsaw:Action="/Calculator/Add/response" message="ns2:SampleContract_Add_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

This property is used by the built-in WSDL Builder in the WCF LOB Adapter SDK and used for determining whether to write the operation documentation in WSDL.

If this setting is set to true, it generates the <wsdl:documentation><doc:adapterOperationDocumentation> as shown below.

Note
This setting doesn't impact the documentation defined before the schema definition of the input and output message.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

MetadataSettings Class
MetadataSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
IWsdlRetrieval


OperationMetadata Class
See Also Members
[image]

Represents the base class for an operation metadata. Use ParameterizedOperationMetadata to create an operation definition with parameters and results.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata

Syntax

Visual Basic
Public MustInherit Class OperationMetadata
    Implements IDisposable
C#
public abstract class OperationMetadata : IDisposable
C++
public ref class OperationMetadata abstract : IDisposable
J#
public abstract class OperationMetadata implements IDisposable
JScript
public abstract class OperationMetadata implements IDisposable

Remarks

The WCF LOB Adapter SDK provides a metadata object model to represent a target system's metadata in an object-oriented format. The key classes for representing metadata for operations are OperationMetadata and TypeMetadata, and their subclasses.

The OperationMetadata subclasses contain information about operations in the target systems. In most scenarios, the ParameterizedOperationMetadata class can be used to define operation metadata that includes a return type (OperationResult), and a list of parameters (OperationParameter).

You can create your own subclass of OperationMetadata class. Instances of OperationMetadata subclasses are created in the ResolveOperationMetadata method of the IMetadataResolverHandler interface.

If the target system already has XML schema definitions available to represent input and output of an operation, the schemas can be passed in within the OperationMetadata class to auto-construct the encapsulated metadata object model. When creating a custom operation metadata definition by deriving from this class, an XML schema definition for input and output of operation metadata is created by calling the ExportInputXmlSchema and ExportOutputXmlSchema methods in the concrete implementations of this abstract class.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.OperationMetadata
Microsoft.ServiceModel.Channels.Common.ParameterizedOperationMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
ParameterizedOperationMetadata
IMetadataResolverHandler


OperationMetadata Members
See Also Methods Properties Constructors
[image]

Represents the base class for an operation metadata. Use ParameterizedOperationMetadata to create an operation definition with parameters and results.

The following tables list the members exposed by the OperationMetadata type.

Protected Constructors

Name | Description
OperationMetadata | Overloaded. Initializes a new instance of the OperationMetadata class.
Top

Public Properties

 | Name | Description
public property | CanUseCommonCache | Gets or sets a Boolean value that indicates whether this type metadata can be stored in the common cache.
public property | Description | Gets or sets the description of the operation.
public property | DisplayName | Gets or sets the display name of the operation.
public property | InputMessageAction | Gets the WS-Addressing Action of the input message of this operation.
public property | IsDisposed | Gets a value indicating whether the operation was disposed.
public property | IsOneWay | Gets a value indicating whether the operation is one-way.
public property | LastTimeAccessed | Gets a value indicating the DateTime of the last time the metadata was accessed.
public property | MetadataTimestamp | Gets or sets the time stamp of the operation's metadata.
public property | NeverExpires | Gets or sets a Boolean value that indicates whether the metadata for the operation will expire.
public property | OperationGroup | Gets or sets the operation group of this operation which is used to determine the port type in the generated Dynamic Contract (WSDL).
public property | OperationNamespace | Gets or sets the namespace of the operation.
public property | OriginalName | Gets or sets the original name of the operation.
public property | OutputMessageAction | Gets the WS-Addressing Action of the output message of this operation.
public property | Properties | Gets the Properties dictionary of the operation.
public property | UniqueId | Gets the unique identifier of the operation.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. Releases all resources used by the current OperationMetadata object.
public method | Equals | (inherited from Object)
public method | ExportInputXmlSchema | Exports the operation's input message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | ExportOutputXmlSchema | Exports the operation's output message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. Releases all resources used by the current OperationMetadata object.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

OperationMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
ParameterizedOperationMetadata
IMetadataResolverHandler


OperationMetadata Constructor
[image]

Initializes a new instance of the OperationMetadata class.

Overload List

Name | Description
OperationMetadata (String, String) | Initializes a new instance of the OperationMetadata class by using the specified operationId and display name.
OperationMetadata (String, String, DateTime, Boolean) | Initializes a new instance of the OperationMetadata class by using the specified operationId, display name, metadata timestamp, and expiration flag.

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata Constructor (String, String)
[image]

Initializes a new instance of the OperationMetadata class by using the specified operationId and display name.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim operationId As String
Dim displayName As String

Dim instance As New OperationMetadata(operationId, displayName)

Syntax

Visual Basic
Protected Sub New ( _
    operationId As String, _
    displayName As String _
)
C#
protected OperationMetadata (
    string operationId,
    string displayName
)
C++
protected:
OperationMetadata (
    String^ operationId,
    String^ displayName
)
J#
protected OperationMetadata (
    String operationId,
    String displayName
)
JScript
protected function OperationMetadata (
    operationId : String,
    displayName : String
)

Parameters

operationId

The unique operation ID for that operation.

displayName

The display name of the operation.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata Constructor (String, String, DateTime, Boolean)
[image]

Initializes a new instance of the OperationMetadata class by using the specified operationId, display name, metadata timestamp, and expiration flag.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim operationId As String
Dim displayName As String
Dim metadataTimestamp As DateTime
Dim neverExpires As Boolean

Dim instance As New OperationMetadata(operationId, displayName, metadataTimestamp, neverExpires)

Syntax

Visual Basic
Protected Sub New ( _
    operationId As String, _
    displayName As String, _
    metadataTimestamp As DateTime, _
    neverExpires As Boolean _
)
C#
protected OperationMetadata (
    string operationId,
    string displayName,
    DateTime metadataTimestamp,
    bool neverExpires
)
C++
protected:
OperationMetadata (
    String^ operationId,
    String^ displayName,
    DateTime metadataTimestamp,
    bool neverExpires
)
J#
protected OperationMetadata (
    String operationId,
    String displayName,
    DateTime metadataTimestamp,
    boolean neverExpires
)
JScript
protected function OperationMetadata (
    operationId : String,
    displayName : String,
    metadataTimestamp : DateTime,
    neverExpires : boolean
)

Parameters

operationId

The unique operation ID for that operation.

displayName

The display name of the operation.

metadataTimestamp

The times tamp of the operation's metadata.

neverExpires

true if the metadata for the operation will never expire; otherwise, false.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. Releases all resources used by the current OperationMetadata object.
public method | Equals | (inherited from Object)
public method | ExportInputXmlSchema | Exports the operation's input message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | ExportOutputXmlSchema | Exports the operation's output message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. Releases all resources used by the current OperationMetadata object.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

OperationMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
ParameterizedOperationMetadata
IMetadataResolverHandler


OperationMetadata.Dispose Method
[image]

Releases all resources used by the current OperationMetadata object.

Overload List

Name | Description
OperationMetadata.Dispose () | Releases all resources used by the current OperationMetadata object.
OperationMetadata.Dispose (Boolean) | Releases all resources used by the current OperationMetadata object.

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.Dispose Method ()
[image]

Releases all resources used by the current OperationMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata

instance.Dispose

Syntax

Visual Basic
Public Sub Dispose
C#
public void Dispose ()
C++
public:
virtual void Dispose () sealed
J#
public final void Dispose ()
JScript
public final function Dispose ()

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.Dispose Method (Boolean)
[image]

Releases all resources used by the current OperationMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim disposing As Boolean

Me.Dispose(disposing)

Syntax

Visual Basic
Protected Overridable Sub Dispose ( _
    disposing As Boolean _
)
C#
protected virtual void Dispose (
    bool disposing
)
C++
protected:
virtual void Dispose (
    bool disposing
)
J#
protected void Dispose (
    boolean disposing
)
JScript
protected function Dispose (
    disposing : boolean
)

Parameters

Disposing

true to release both managed and unmanaged resources; false to release only unmanaged resources.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.ExportInputXmlSchema Method
See Also Example
[image]

Exports the operation's input message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportInputXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
Public MustOverride Sub ExportInputXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
public abstract void ExportInputXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
public:
virtual void ExportInputXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) abstract
J#
public abstract void ExportInputXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
public abstract function ExportInputXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the operation uses to export its input message schema and namespace prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

timeout

The maximum time to wait for the completion of the operation.

Example

The following example shows how to add an input XML schema and its corresponding namespace prefix to the XmlSchemaExportContext.

C# Copy Code
public override void ExportInputXmlSchema(XmlSchemaExportContext schemaExportContext, MetadataLookup metadataLookup, TimeSpan timeout)
{
    if (schemaExportContext == null)
    {
        throw new AdapterException("schemaExportContext is null");
    }
    // Ensure operation namespace is added
    if (!schemaExportContext.NamespacePrefixSet.ContainsKey(this.OperationNamespace))
    {
        schemaExportContext.NamespacePrefixSet.Add(this.OperationNamespace, getUniqueNamespacePrefix(schemaExportContext, 0));
    }

    // look in the schemas
    XmlSchemas schemas = schemaList;
    if (schemas.Contains(inputMessageName.Namespace))
    {
        XmlSchema inputSchema = schemas[inputMessageName.Namespace];
        int includedSchemaCount = inputSchema.Includes.Count;
        if (!IsComplexTypeAlreadyDefined(schemaExportContext.SchemaSet, inputSchema))
        {
            schemaExportContext.SchemaSet.Add(inputSchema);
            if (!schemaExportContext.NamespacePrefixSet.ContainsKey(inputMessageName.Namespace))
            {
                schemaExportContext.NamespacePrefixSet.Add(inputMessageName.Namespace, getUniqueNamespacePrefix(schemaExportContext, 0));
            }
        }
        // if included schema count is > 0 and this operation's metadata depends on some types
        // and elements defined in the included schemas, include those schemas as well
        if (includedSchemaCount > 0)
        {
            // …
        }
    }
}

Remarks

Adapter developers can override this method to provide their own input XML schema for a particular operation.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.ExportOutputXmlSchema Method
See Also Example
[image]

Exports the operation's output message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportOutputXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
Public MustOverride Sub ExportOutputXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
public abstract void ExportOutputXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
public:
virtual void ExportOutputXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) abstract
J#
public abstract void ExportOutputXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
public abstract function ExportOutputXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the operation uses to export its output message schema and namespace prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

timeout

The maximum time to wait for the completion of the operation.

Example

For an example on how to implement this method, see the example section of the ExportInputXmlSchema method.

Remarks

Adapter developers can override this method to provide their own output XML schema for a particular operation.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.GenerateInputXmlSchemaAnnotation Method
See Also Example
[image]

Generates the operation's input message XmlSchemaAnnotation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim returnValue As XmlSchemaAnnotation

returnValue = Me.GenerateInputXmlSchemaAnnotation

Syntax

Visual Basic
Protected Friend Overridable Function GenerateInputXmlSchemaAnnotation As XmlSchemaAnnotation
C#
protected internal virtual XmlSchemaAnnotation GenerateInputXmlSchemaAnnotation ()
C++
protected public:
virtual XmlSchemaAnnotation^ GenerateInputXmlSchemaAnnotation ()
J#
protected XmlSchemaAnnotation GenerateInputXmlSchemaAnnotation ()
JScript
protected internal function GenerateInputXmlSchemaAnnotation () : XmlSchemaAnnotation

Return Value

An XmlSchemaAnnotation object.

Example

The following code example provides a usage of this method.

C# Copy Code
public class MyCustomOperationMetadata : ParameterizedOperationMetadata
{
        protected override XmlSchemaAnnotation GenerateInputXmlSchemaAnnotation()
        {
            XmlSchemaAnnotation annotation = base.GenerateInputXmlSchemaAnnotation();
            // update annotation with documentation elements
            // ...
            return annotation;
        }
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.GenerateOutputXmlSchemaAnnotation Method
See Also Example
[image]

Generates the operation's output message XmlSchemaAnnotation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim returnValue As XmlSchemaAnnotation

returnValue = Me.GenerateOutputXmlSchemaAnnotation

Syntax

Visual Basic
Protected Friend Overridable Function GenerateOutputXmlSchemaAnnotation As XmlSchemaAnnotation
C#
protected internal virtual XmlSchemaAnnotation GenerateOutputXmlSchemaAnnotation ()
C++
protected public:
virtual XmlSchemaAnnotation^ GenerateOutputXmlSchemaAnnotation ()
J#
protected XmlSchemaAnnotation GenerateOutputXmlSchemaAnnotation ()
JScript
protected internal function GenerateOutputXmlSchemaAnnotation () : XmlSchemaAnnotation

Return Value

An XmlSchemaAnnotation object.

Example

The following code example provides a usage of this method.

C# Copy Code
class MyCustomOperationMetadata : ParameterizedOperationMetadata
{
        protected override XmlSchemaAnnotation GenerateInputXmlSchemaAnnotation()
        {
            XmlSchemaAnnotation annotation = base.GenerateOutputXmlSchemaAnnotation();
            // update annotation with documentation elements
            // ...
            return annotation;
        }
}

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanUseCommonCache | Gets or sets a Boolean value that indicates whether this type metadata can be stored in the common cache.
public property | Description | Gets or sets the description of the operation.
public property | DisplayName | Gets or sets the display name of the operation.
public property | InputMessageAction | Gets the WS-Addressing Action of the input message of this operation.
public property | IsDisposed | Gets a value indicating whether the operation was disposed.
public property | IsOneWay | Gets a value indicating whether the operation is one-way.
public property | LastTimeAccessed | Gets a value indicating the DateTime of the last time the metadata was accessed.
public property | MetadataTimestamp | Gets or sets the time stamp of the operation's metadata.
public property | NeverExpires | Gets or sets a Boolean value that indicates whether the metadata for the operation will expire.
public property | OperationGroup | Gets or sets the operation group of this operation which is used to determine the port type in the generated Dynamic Contract (WSDL).
public property | OperationNamespace | Gets or sets the namespace of the operation.
public property | OriginalName | Gets or sets the original name of the operation.
public property | OutputMessageAction | Gets the WS-Addressing Action of the output message of this operation.
public property | Properties | Gets the Properties dictionary of the operation.
public property | UniqueId | Gets the unique identifier of the operation.

See Also

Reference

OperationMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
ParameterizedOperationMetadata
IMetadataResolverHandler


OperationMetadata.CanUseCommonCache Property
[image]

Gets or sets a Boolean value that indicates whether this type metadata can be stored in the common cache.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As Boolean

value = instance.CanUseCommonCache

instance.CanUseCommonCache = value

Syntax

Visual Basic
Public Property CanUseCommonCache As Boolean
C#
public bool CanUseCommonCache { get; set; }
C++
public:
virtual property bool CanUseCommonCache {
    bool get () sealed;
    void set (bool value);
}
J#
/** @property */
public final boolean get_CanUseCommonCache ()

/** @property */
public void set_CanUseCommonCache (boolean value)
JScript
public final function get CanUseCommonCache () : boolean

public function set CanUseCommonCache (value : boolean)

Property Value

true if this type metadata can be stored in the common cache; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
CommonCacheSettings
CanUseCommonCache


OperationMetadata.Description Property
See Also Example
[image]

Gets or sets the description of the operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As String

value = instance.Description

instance.Description = value

Syntax

Visual Basic
Public Property Description As String
C#
public string Description { get; set; }
C++
public:
property String^ Description {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_Description ()

/** @property */
public void set_Description (String value)
JScript
public function get Description () : String

public function set Description (value : String)

Property Value

A string that contains the description of the operation.

Example

The following code example provides a usage of this property. For a complete code listing, see ResolveOperationMetadata.

C# Copy Code
ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
opMetadata.Description = "This method echoes the incoming string COUNT number of times.";

The following is the generated WSDL documentation.

Copy Code
<wsdl:definitions>
  <wsdl:types/>
  <wsdl:message/>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="EchoString">
      <wsdl:documentation>
        <doc:adapterOperationDocumentation>
          <doc:summary>This method echoes the incoming string COUNT number of times.</doc:summary>
          <doc:param name="name">An input string.</doc:param>
          <doc:returns>Array of input string returned as a result.</doc:returns>
        </doc:adapterOperationDocumentation>
      </wsdl:documentation>
      <wsdl:input wsaw:Action="/Echo/EchoString" message="ns2:SampleContract_EchoString_InputMessage" />
      <wsdl:output wsaw:Action="/Echo/EchoString/response" message="ns2:SampleContract_EchoString_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

Setting this emits a <wsdl:documentation> with the description text for the operation in the generated WSDL definition.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
GenerateWsdlDocumentation


OperationMetadata.DisplayName Property
[image]

Gets or sets the display name of the operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As String

value = instance.DisplayName

instance.DisplayName = value

Syntax

Visual Basic
Public Property DisplayName As String
C#
public string DisplayName { get; set; }
C++
public:
property String^ DisplayName {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_DisplayName ()

/** @property */
public void set_DisplayName (String value)
JScript
public function get DisplayName () : String

public function set DisplayName (value : String)

Property Value

A string that contains the display name of the operation.

Remarks

The display name is shown in the Add Adapter Service Reference Visual Studio Plug-in and Consume Adapter Service BizTalk Project Add-in tools, and it is used for operation name in WSDL.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.InputMessageAction Property
See Also Example
[image]

Gets the WS-Addressing Action of the input message of this operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As String

value = instance.InputMessageAction

Syntax

Visual Basic
Public ReadOnly Property InputMessageAction As String
C#
public string InputMessageAction { get; }
C++
public:
property String^ InputMessageAction {
    String^ get ();
}
J#
/** @property */
public String get_InputMessageAction ()
JScript
public function get InputMessageAction () : String

Property Value

A string that contains the WS-Addressing Action of the input message of this operation.

Example

The following is an example of <wsdl:input> element.

Copy Code
<wsdl:definitions>
    . . .
  <wsdl:portType name="MySQLContract">
    <wsdl:operation name="uspUpdateEmployeePersonalInfo">
      <wsdl:input wsaw:Action="localhost/AdventureWorks/StoredProcedures/HumanResources/uspUpdateEmployeePersonalInfo" message="ns1:MySQLContract_uspUpdateEmployeePersonalInfo_InputMessage" />
      <wsdl:output wsaw:Action="localhost/AdventureWorks/StoredProcedures/HumanResources/uspUpdateEmployeePersonalInfo/response" message="ns1:MySQLContract_uspUpdateEmployeePersonalInfo_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

The value of this field is persisted into <wsdl:input> "wsaw:Action" attribute in the generated WSDL.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.IsDisposed Property
[image]

Gets a value indicating whether the operation was disposed.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As Boolean

value = instance.IsDisposed

Syntax

Visual Basic
Public ReadOnly Property IsDisposed As Boolean
C#
public bool IsDisposed { get; }
C++
public:
property bool IsDisposed {
    bool get ();
}
J#
/** @property */
public boolean get_IsDisposed ()
JScript
public function get IsDisposed () : boolean

Property Value

true if the operation was disposed; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.IsOneWay Property
[image]

Gets a value indicating whether the operation is one-way.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As Boolean

value = instance.IsOneWay

Syntax

Visual Basic
Public MustOverride ReadOnly Property IsOneWay As Boolean
C#
public abstract bool IsOneWay { get; }
C++
public:
virtual property bool IsOneWay {
    bool get () abstract;
}
J#
/** @property */
public abstract boolean get_IsOneWay ()
JScript
public abstract function get IsOneWay () : boolean

Property Value

true if the operation is one-way; otherwise, false.

Remarks

Setting IsOneWay will produce a WCF contract with property IsOneWay =true. The following is an example:

Copy Code
[OperationContract(IsOneWay=true)]
public void MethodOne(int x)
{ }

In order to set an operation as one-way, set OperationResult = null, instead of OperationResult = Empty.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.LastTimeAccessed Property
[image]

Gets a value indicating the DateTime of the last time the metadata was accessed.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As DateTime

value = instance.LastTimeAccessed

Syntax

Visual Basic
Public ReadOnly Property LastTimeAccessed As DateTime
C#
public DateTime LastTimeAccessed { get; }
C++
public:
virtual property DateTime LastTimeAccessed {
    DateTime get () sealed;
}
J#
/** @property */
public final DateTime get_LastTimeAccessed ()
JScript
public final function get LastTimeAccessed () : DateTime

Property Value

A DateTime of the last time the metadata was accessed.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.MetadataTimestamp Property
[image]

Gets or sets the time stamp of the operation's metadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As DateTime

value = instance.MetadataTimestamp

instance.MetadataTimestamp = value

Syntax

Visual Basic
Public Property MetadataTimestamp As DateTime
C#
public DateTime MetadataTimestamp { get; set; }
C++
public:
virtual property DateTime MetadataTimestamp {
    DateTime get () sealed;
    void set (DateTime value);
}
J#
/** @property */
public final DateTime get_MetadataTimestamp ()

/** @property */
public void set_MetadataTimestamp (DateTime value)
JScript
public final function get MetadataTimestamp () : DateTime

public function set MetadataTimestamp (value : DateTime)

Property Value

A DateTime containing the time stamp of the operation's metadata.

Remarks

This value is used by the metadata cache management within the WCF LOB Adapter SDK.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.NeverExpires Property
[image]

Gets or sets a Boolean value that indicates whether the metadata for the operation will expire.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As Boolean

value = instance.NeverExpires

instance.NeverExpires = value

Syntax

Visual Basic
Public Property NeverExpires As Boolean
C#
public bool NeverExpires { get; set; }
C++
public:
virtual property bool NeverExpires {
    bool get () sealed;
    void set (bool value);
}
J#
/** @property */
public final boolean get_NeverExpires ()

/** @property */
public void set_NeverExpires (boolean value)
JScript
public final function get NeverExpires () : boolean

public function set NeverExpires (value : boolean)

Property Value

true if the metadata for the operation will never expire; otherwise, false.

Remarks

By returning true, an OperationMetadata object will never be refreshed. When returning false, the metadata cache management will periodically update this object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
MetadataLookup


OperationMetadata.OperationGroup Property
See Also Example
[image]

Gets or sets the operation group of this operation which is used to determine the port type in the generated Dynamic Contract (WSDL).

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As String

value = instance.OperationGroup

instance.OperationGroup = value

Syntax

Visual Basic
Public Property OperationGroup As String
C#
public string OperationGroup { get; set; }
C++
public:
property String^ OperationGroup {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_OperationGroup ()

/** @property */
public void set_OperationGroup (String value)
JScript
public function get OperationGroup () : String

public function set OperationGroup (value : String)

Property Value

A string containing the operation group of this operation which is used to determine the <portType> in the WSDL.

Example

The following sample WSDL shows having a separate <portType> for operations whose input and output messages are defined in a separate schema.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:ns0="http://tempuri1.org/" xmlns:ns1="http://tempuri2.com/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"  targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <schema elementFormDefault="qualified" targetNamespace="http://tempuri1.org/" xmlns="http://www.w3.org/2001/XMLSchema" />
    <schema elementFormDefault="qualified" targetNamespace="http://tempuri2.com/" xmlns="http://www.w3.org/2001/XMLSchema" />
  </wsdl:types>
  <wsdl:message name="SampleContract_GetServiceInfo_InputMessage">
    <wsdl:part name="parameters" element="ns0:GetServiceInfo" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetServiceInfo_OutputMessage">
    <wsdl:part name="parameters" element="ns0:GetServiceInfoResponse" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetSimpleRoute_InputMessage">
    <wsdl:part name="parameters" element="ns1:GetSimpleRoute" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetSimpleRoute_OutputMessage">
    <wsdl:part name="parameters" element="ns1:GetSimpleRouteResponse" />
  </wsdl:message>

  <wsdl:portType name="SampleContract1">
    <wsdl:operation name="GetServiceInfo">
      <wsdl:input wsaw:Action="GetServiceInfo" message="tns:SampleContract_GetServiceInfo_InputMessage" />
      <wsdl:output wsaw:Action="GetServiceInfo/response" message="tns:SampleContract_GetServiceInfo_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>

  <wsdl:portType name="SampleContract2">
    <wsdl:operation name="SimpleRoute">
      <wsdl:input wsaw:Action="GetSimpleRoute" message="tns:SampleContract_GetSimpleRoute_InputMessage" />
      <wsdl:output wsaw:Action="GetSimpleRoute/response" message="tns:SampleContract_GetSimpleRoute_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>

</wsdl:definitions>
<wsdl:definitions>
    . . .
  <wsdl:portType name="MySQLContract">
     . . .
  </wsdl:portType>
</wsdl:definitions>

Remarks

This property represents the <portType> of the generated WSDL. The property groups operations under one logically related group. The <portType> gets translated into a common language runtime (CLR) interface. This property is mapped to the class name of the generated .NET proxy.

To successfully generate a valid WSDL document, all operations within a specific operation group must have the same operation namespace. If you don't set this property, the WCF LOB Adapter SDK uses the adapter service namespace as the value of the <wsdl:portType> 'name' attribute. For example, if the service namespace is 'http://Microsoft.Adapters.Samples.Sql', the OperationGroup is set to "http.Microsoft.Adapters.Samples.Sql", which gets mapped to common language runtime (CLR) interface name "httpMicrosoftAdaptersSamplesSql".

Note
In version 1, the WCF LOB Adapter SDK only allows setting one namespace for operations defined within a port type. All operations that have a specific operation group must have the same OperationNamespace, otherwise, the generated WSDL will be invalid due to a mismatch between the namespace prefixes defined within the <message> element(s). You need to make sure that there is one-to-one mapping between the OperationGroup and OperationNamespace if you want to use the built-in WSDL builder. Alternatively, you can provide your own implementation of the GetWsdl method and generate the <portType> and <message> elements as desired.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.OperationNamespace Property
See Also Example
[image]

Gets or sets the namespace of the operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As String

value = instance.OperationNamespace

instance.OperationNamespace = value

Syntax

Visual Basic
Public Property OperationNamespace As String
C#
public string OperationNamespace { get; set; }
C++
public:
property String^ OperationNamespace {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_OperationNamespace ()

/** @property */
public void set_OperationNamespace (String value)
JScript
public function get OperationNamespace () : String

public function set OperationNamespace (value : String)

Property Value

A string containing the namespace of the operation.

Example

The following fraction of WSDL document shows two operations, "GetServiceInfo" and "GetSimpleRoute", that have an operation namespace set as http:// tempuri.org. You can set an operation namespace for an OperationMetadata in the ResolveOperationMetadata implementation by using the OperationNamespace property. The built-in WSDL builder creates <message> and <part> elements for input/output messages of an operation. It also then sets the corresponding namespace prefix in <definitions> and refers to this prefix in the <part> reference.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:ns0="http://tempuri.org/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"  targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/" xmlns="http://www.w3.org/2001/XMLSchema" />
  </wsdl:types>
  <wsdl:message name="SampleContract_GetServiceInfo_InputMessage">
    <wsdl:part name="parameters" element="ns0:GetServiceInfo" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetServiceInfo_OutputMessage">
    <wsdl:part name="parameters" element="ns0:GetServiceInfoResponse" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetSimpleRoute_InputMessage">
    <wsdl:part name="parameters" element="ns0:GetSimpleRoute" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetSimpleRoute_OutputMessage">
    <wsdl:part name="parameters" element="ns0:GetSimpleRouteResponse" />
  </wsdl:message>

  <wsdl:portType name="SampleContract">
    <wsdl:operation name="GetServiceInfo">
      <wsdl:input wsaw:Action="GetServiceInfo" message="tns:SampleContract_GetServiceInfo_InputMessage" />
      <wsdl:output wsaw:Action="GetServiceInfo/response" message="tns:SampleContract_GetServiceInfo_OutputMessage" />
    </wsdl:operation>
    <wsdl:operation name="GetSimpleRoute">
      <wsdl:input wsaw:Action="GetSimpleRoute" message="tns:SampleContract_GetSimpleRoute_InputMessage" />
      <wsdl:output wsaw:Action="GetSimpleRoute/response" message="tns:SampleContract_GetSimpleRoute_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>

</wsdl:definitions>

Remarks

This value sets the "targetNamespace" attribute in the <schema> element of generated XML schema file that contains the input and output complex type definitions for the operation.

This property is used as the port name if an operation group is not specified for an operation. This property is also used for the operation messages.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.OriginalName Property
[image]

Gets or sets the original name of the operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As String

value = instance.OriginalName

instance.OriginalName = value

Syntax

Visual Basic
Public Property OriginalName As String
C#
public string OriginalName { get; set; }
C++
public:
property String^ OriginalName {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_OriginalName ()

/** @property */
public void set_OriginalName (String value)
JScript
public function get OriginalName () : String

public function set OriginalName (value : String)

Property Value

A string containing the original name of the operation.

Remarks

This property is the internal name of the operation. This value is not used during WSDL generation and therefore is never seen by adapter consumers. This value is reserved for use only by adapter developers. One example of where this may be different is if the original target system operation name contains characters that are illegal in XML element names. Another example is where the adapter wants to make operation names more meaningful to adapter consumers. In this case the original name may be "Create" and the operation name may be "CreateCustomer".

You need to use this property when the name of the operation in the generated interfaces is different from the line-of-business system operation name. You can extract this name from the operation metadata in the IOutboundHandler/ IInboundHandler implementations for interaction with the line-of-business system. This name does not exist in the generated WSDL for the adapter consumer.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.OutputMessageAction Property
See Also Example
[image]

Gets the WS-Addressing Action of the output message of this operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As String

value = instance.OutputMessageAction

Syntax

Visual Basic
Public ReadOnly Property OutputMessageAction As String
C#
public string OutputMessageAction { get; }
C++
public:
property String^ OutputMessageAction {
    String^ get ();
}
J#
/** @property */
public String get_OutputMessageAction ()
JScript
public function get OutputMessageAction () : String

Property Value

A string containing the WS-Addressing Action of the output message of this operation.

Example

The following fraction of WSDL document shows an element of <wsdl:output>.

Copy Code
<wsdl:definitions>
  <wsdl:types/>
  <wsdl:message/>
  <wsdl:portType name="MySQLContract">
    <wsdl:operation name="uspUpdateEmployeePersonalInfo">
      <wsdl:input wsaw:Action="localhost/AdventureWorks/StoredProcedures/HumanResources/uspUpdateEmployeePersonalInfo" message="ns1:MySQLContract_uspUpdateEmployeePersonalInfo_InputMessage" />
      <wsdl:output wsaw:Action="localhost/AdventureWorks/StoredProcedures/HumanResources/uspUpdateEmployeePersonalInfo/response" message="ns1:MySQLContract_uspUpdateEmployeePersonalInfo_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

The value of this field is persisted into <wsdl:output> "wsaw:Action" attribute in the generated WSDL.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.Properties Property
[image]

Gets the Properties dictionary of the operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As Dictionary(Of String, Object)

value = instance.Properties

Syntax

Visual Basic
Public ReadOnly Property Properties As Dictionary(Of String, Object)
C#
public Dictionary<string,Object> Properties { get; }
C++
public:
property Dictionary<String^, Object^>^ Properties {
    Dictionary<String^, Object^>^ get ();
}
J#
/** @property */
public Dictionary<String,Object> get_Properties ()
JScript
public function get Properties () : Dictionary<String,Object>

Property Value

A Properties dictionary of the operation.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadata.UniqueId Property
[image]

Gets the unique identifier of the operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadata
Dim value As String

value = instance.UniqueId

Syntax

Visual Basic
Public ReadOnly Property UniqueId As String
C#
public string UniqueId { get; }
C++
public:
virtual property String^ UniqueId {
    String^ get () sealed;
}
J#
/** @property */
public final String get_UniqueId ()
JScript
public final function get UniqueId () : String

Property Value

A string containing the unique operation identifier.

Remarks

The ResolveOperationMetadata resolves input and output messages for an operation using this unique identifier.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadata Class
OperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadataTraceRecord Class
See Also Example Members
[image]

Used to trace the execution sequence of the code and to trace any error messages or warnings pertaining to OperationMetadata in a Windows Communication Foundation (WCF) compliant format.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationMetadataTraceRecord

Syntax

Visual Basic
Public NotInheritable Class OperationMetadataTraceRecord
    Inherits TraceRecord
C#
public sealed class OperationMetadataTraceRecord : TraceRecord
C++
public ref class OperationMetadataTraceRecord sealed : public TraceRecord
J#
public final class OperationMetadataTraceRecord extends TraceRecord
JScript
public final class OperationMetadataTraceRecord extends TraceRecord

Example

The following code example shows how to use this class.

C# Copy Code
ParameterizedOperationMetadata operationMetadata = new ParameterizedOperationMetadata(operationId, "OperationName");
SQLAdapterUtilities.Trace.Trace(
    System.Diagnostics.TraceEventType.Information,
    "http://Microsoft.Adapters.Samples.Sql/TraceCode/MetadataResolverError",
    "Cannot resolve metadata",
    this,
    new OperationMetadataTraceRecord(operationMetadata));

Remarks

The OperationMetadataTraceRecord class inherits from the TraceRecord class. See the example section of the TraceRecord class for how to use a custom trace record to trace extra information.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TraceRecord
Microsoft.ServiceModel.Channels.Common.OperationMetadataTraceRecord

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationMetadataTraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace
OperationMetadata


OperationMetadataTraceRecord Members
See Also Constructors Methods
[image]

Used to trace the execution sequence of the code and to trace any error messages or warnings pertaining to OperationMetadata in a Windows Communication Foundation (WCF) compliant format.

The following tables list the members exposed by the OperationMetadataTraceRecord type.

Public Constructors

Name | Description
OperationMetadataTraceRecord | Initializes a new instance of the OperationMetadataTraceRecord class using the specified OperationMetadata.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

OperationMetadataTraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace
OperationMetadata


OperationMetadataTraceRecord Constructor
[image]

Initializes a new instance of the OperationMetadataTraceRecord class using the specified OperationMetadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim operationMetadata As OperationMetadata

Dim instance As New OperationMetadataTraceRecord(operationMetadata)

Syntax

Visual Basic
Public Sub New ( _
    operationMetadata As OperationMetadata _
)
C#
public OperationMetadataTraceRecord (
    OperationMetadata operationMetadata
)
C++
public:
OperationMetadataTraceRecord (
    OperationMetadata^ operationMetadata
)
J#
public OperationMetadataTraceRecord (
    OperationMetadata operationMetadata
)
JScript
public function OperationMetadataTraceRecord (
    operationMetadata : OperationMetadata
)

Parameters

operationMetadata

The specified OperationMetadata which requires the trace information.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationMetadataTraceRecord Class
OperationMetadataTraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationMetadataTraceRecord Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

OperationMetadataTraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace
OperationMetadata


OperationMetadataTraceRecord Properties
[image]

See Also

Reference

OperationMetadataTraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace
OperationMetadata


OperationParameter Class
See Also Example Members
[image]

Defines metadata for a parameter within an operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationParameter

Syntax

Visual Basic
Public Class OperationParameter
    Inherits QualifiedTypeContainer
C#
public class OperationParameter : QualifiedTypeContainer
C++
public ref class OperationParameter : public QualifiedTypeContainer
J#
public class OperationParameter extends QualifiedTypeContainer
JScript
public class OperationParameter extends QualifiedTypeContainer

Example

The operation parameter has a type and this type can be either a native XML Schema type, simple type, or a complex type.

Example 1: Creating an OperationParameter with native XML Schema type

The following code example provides an ResolveOperationMetadata implementation for defining a native type parameter.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Echo/EchoString":
            // Syntax: String[] EchoString(String name)
            opMetadata.DisplayName = "EchoString";
            // Create Parameters
            OperationParameter name = new OperationParameter("name", OperationParameterDirection.In, QualifiedType.StringType, false);
            opMetadata.Parameters.Add(name);
            // Create Result
            opMetadata.OperationResult = new OperationResult(QualifiedType.StringType, true);
            break;

        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the generated XML Schema Definition.

Copy Code
<xs:element name="EchoString">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="name" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
</xs:element>

Example 2: Creating an operation parameter with simple type

The following code example implements an ResolveOperationMetadata for defining a custom simple type parameter - example decimal type with restrictions.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Echo/EchoNumber":
            opMetadata.DisplayName = "EchoNumber";
            opMetadata.Description = "This operation defines a parameter with a restriction of 5 fraction digits";
            // Create operation parameters
            SimpleQualifiedType decimalSQT = new SimpleQualifiedType(XmlTypeCode.Decimal);
            XmlSchemaFacet facet = new XmlSchemaFractionDigitsFacet();
            facet.Value = "5";
            decimalSQT.XmlSchemaFacets.Add(facet);
            OperationParameter decimalParm = new OperationParameter("number", OperationParameterDirection.In, decimalSQT, false);
            opMetadata.Parameters.Add(decimalParm);
            // Create operation result
            opMetadata.OperationResult = new OperationResult(decimalSQT, false);
            break;
        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the generated XML Schema Definition.

Copy Code
<xs:element name="EchoNumber">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="number">
          <xs:simpleType>
            <xs:restriction base="xs:decimal">
              <xs:fractionDigits value="5" />
            </xs:restriction>
          </xs:simpleType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
</xs:element>

Example 3: Creating an OperationParameter with complex type

The following code example defines a complex type parameter.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Echo/EchoComplexObject":
            // Syntax: SampleComplexObject[] EchoComplexObject(SampleComplexObject complexObject)
            opMetadata.DisplayName = "EchoComplexObject";
            // Create Parameters
            ComplexQualifiedType myEchoObjectQT = new ComplexQualifiedType("SampleComplexObjectType");
            OperationParameter complexObject = new OperationParameter("complexObject", OperationParameterDirection.In, myEchoObjectQT, false);
            opMetadata.Parameters.Add(complexObject);
            // Create Result
            opMetadata.OperationResult = new OperationResult(myEchoObjectQT, true);
            // Resolve type metadata in this method instead of ResolveTypeMetadata
            extraTypeMetadataResolved = new TypeMetadataCollection();
            StructuredTypeMetadata complexObjectTM = new StructuredTypeMetadata("SampleComplexObjectType", "MyComplexObject");
            TypeMember parmText = new TypeMember("text", QualifiedType.StringType, false);
            TypeMember parmTimestamp = new TypeMember("timestamp", QualifiedType.DateTimeType, false);
            complexObjectTM.Members.Add(parmText);
            complexObjectTM.Members.Add(parmTimestamp);
            complexObjectTM.CanUseCommonCache = true;
            extraTypeMetadataResolved.Add(complexObjectTM);
            break;
        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the generated XML Schema Definition.

Copy Code
<xs:complexType name="MyComplexObject">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="1" name="text" nillable="true" type="xs:string" />
      <xs:element minOccurs="1" maxOccurs="1" name="timestamp" type="xs:dateTime" />
    </xs:sequence>
</xs:complexType>
<xs:element name="MyComplexObject" nillable="true" type="ns1:MyComplexObject" />
<xs:element name="EchoComplexObject">
    <xs:annotation>
      <xs:documentation>
        <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Echo/EchoComplexObject</doc:action>
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="complexObject" nillable="true" type="ns1:MyComplexObject" />
      </xs:sequence>
    </xs:complexType>
</xs:element>

Remarks

An OperationParameter object describes an individual parameter for an operation. If the isArray parameter is set to true, make the operation parameter an array.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.QualifiedTypeContainer
Microsoft.ServiceModel.Channels.Common.OperationParameter

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationParameter Members
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
ParameterizedOperationMetadata


OperationParameter Members
See Also Constructors Methods Properties
[image]

Defines metadata for a parameter within an operation.

The following tables list the members exposed by the OperationParameter type.

Public Constructors

Name | Description
OperationParameter | Overloaded. Initializes a new instance of the OperationParameter class.
Top

Public Properties

 | Name | Description
public property | DefaultValue | Gets or sets the default value for this member. (inherited from QualifiedTypeContainer)
public property | Description | Gets or sets the description for the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | Direction | Gets or sets the direction of the parameter: In, Out, or InOut.
public property | IsArray | Gets or sets a Boolean value indicating whether the associated member is an array. (inherited from QualifiedTypeContainer)
public property | IsOptional | Gets or sets a Boolean value indicating whether the type is optional. (inherited from QualifiedTypeContainer)
public property | Name | Gets or sets the name of the parameter.
public property | OriginalName | Gets or sets the original name of the parameter.
public property | Properties | Gets the properties dictionary of the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | QualifiedType | Gets or sets the qualified type of the associated member: simple, complex, or custom qualified type. (inherited from QualifiedTypeContainer)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GenerateXmlSchemaAnnotation | Generates annotations for the member that can be used in the XML schema that is associated with this member. (inherited from QualifiedTypeContainer)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

OperationParameter Class
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
ParameterizedOperationMetadata


OperationParameter Constructor
[image]

Initializes a new instance of the OperationParameter class.

Overload List

Name | Description
OperationParameter (String, OperationParameterDirection, QualifiedType, Boolean) | Initializes a new instance of the OperationParameter class by using the specified name, direction of the parameter, type of the parameter, and a flag that describes whether the parameter is an array.
OperationParameter (String, String, OperationParameterDirection, QualifiedType, Boolean) | Initializes a new instance of the OperationParameter class with the specified name, original name, direction of the parameter, type of the parameter, and a flag that describes whether the parameter is an array.

See Also

Reference

OperationParameter Class
OperationParameter Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationParameter Constructor (String, OperationParameterDirection, QualifiedType, Boolean)
See Also Example
[image]

Initializes a new instance of the OperationParameter class by using the specified name, direction of the parameter, type of the parameter, and a flag that describes whether the parameter is an array.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim name As String
Dim direction As OperationParameterDirection
Dim qualifiedType As QualifiedType
Dim isArray As Boolean

Dim instance As New OperationParameter(name, direction, qualifiedType, isArray)

Syntax

Visual Basic
Public Sub New ( _
    name As String, _
    direction As OperationParameterDirection, _
    qualifiedType As QualifiedType, _
    isArray As Boolean _
)
C#
public OperationParameter (
    string name,
    OperationParameterDirection direction,
    QualifiedType qualifiedType,
    bool isArray
)
C++
public:
OperationParameter (
    String^ name,
    OperationParameterDirection direction,
    QualifiedType^ qualifiedType,
    bool isArray
)
J#
public OperationParameter (
    String name,
    OperationParameterDirection direction,
    QualifiedType qualifiedType,
    boolean isArray
)
JScript
public function OperationParameter (
    name : String,
    direction : OperationParameterDirection,
    qualifiedType : QualifiedType,
    isArray : boolean
)

Parameters

name

Name of the parameter.

direction

Direction of the parameter: In, Out, or InOut.

qualifiedType

Qualified type of the parameter: simple, complex, or custom qualified type.

isArray

true if the parameter is an array parameter; otherwise, false.

Example

For examples on how to create an operation parameter, see OperationParameter.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationParameter Class
OperationParameter Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationParameter Constructor (String, String, OperationParameterDirection, QualifiedType, Boolean)
See Also Example
[image]

Initializes a new instance of the OperationParameter class with the specified name, original name, direction of the parameter, type of the parameter, and a flag that describes whether the parameter is an array.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim name As String
Dim originalName As String
Dim direction As OperationParameterDirection
Dim qualifiedType As QualifiedType
Dim isArray As Boolean

Dim instance As New OperationParameter(name, originalName, direction, qualifiedType, isArray)

Syntax

Visual Basic
Public Sub New ( _
    name As String, _
    originalName As String, _
    direction As OperationParameterDirection, _
    qualifiedType As QualifiedType, _
    isArray As Boolean _
)
C#
public OperationParameter (
    string name,
    string originalName,
    OperationParameterDirection direction,
    QualifiedType qualifiedType,
    bool isArray
)
C++
public:
OperationParameter (
    String^ name,
    String^ originalName,
    OperationParameterDirection direction,
    QualifiedType^ qualifiedType,
    bool isArray
)
J#
public OperationParameter (
    String name,
    String originalName,
    OperationParameterDirection direction,
    QualifiedType qualifiedType,
    boolean isArray
)
JScript
public function OperationParameter (
    name : String,
    originalName : String,
    direction : OperationParameterDirection,
    qualifiedType : QualifiedType,
    isArray : boolean
)

Parameters

name

Name of the parameter.

originalName

Original name of the parameter.

direction

Direction of the parameter: In, Out, or InOut.

qualifiedType

Qualified type of the parameter: simple, complex, or custom qualified type.

isArray

true if the parameter is an array parameter; otherwise, false.

Example

For examples on how to create an operation parameter, see OperationParameter.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationParameter Class
OperationParameter Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationParameter Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GenerateXmlSchemaAnnotation | Generates annotations for the member that can be used in the XML schema that is associated with this member. (inherited from QualifiedTypeContainer)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

OperationParameter Class
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
ParameterizedOperationMetadata


OperationParameter Properties
[image]

Public Properties

 | Name | Description
public property | DefaultValue | Gets or sets the default value for this member. (inherited from QualifiedTypeContainer)
public property | Description | Gets or sets the description for the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | Direction | Gets or sets the direction of the parameter: In, Out, or InOut.
public property | IsArray | Gets or sets a Boolean value indicating whether the associated member is an array. (inherited from QualifiedTypeContainer)
public property | IsOptional | Gets or sets a Boolean value indicating whether the type is optional. (inherited from QualifiedTypeContainer)
public property | Name | Gets or sets the name of the parameter.
public property | OriginalName | Gets or sets the original name of the parameter.
public property | Properties | Gets the properties dictionary of the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | QualifiedType | Gets or sets the qualified type of the associated member: simple, complex, or custom qualified type. (inherited from QualifiedTypeContainer)

See Also

Reference

OperationParameter Class
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
ParameterizedOperationMetadata


OperationParameter.Direction Property
See Also Example
[image]

Gets or sets the direction of the parameter: In, Out, or InOut.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationParameter
Dim value As OperationParameterDirection

value = instance.Direction

instance.Direction = value

Syntax

Visual Basic
Public Property Direction As OperationParameterDirection
C#
public OperationParameterDirection Direction { get; set; }
C++
public:
property OperationParameterDirection Direction {
    OperationParameterDirection get ();
    void set (OperationParameterDirection value);
}
J#
/** @property */
public OperationParameterDirection get_Direction ()

/** @property */
public void set_Direction (OperationParameterDirection value)
JScript
public function get Direction () : OperationParameterDirection

public function set Direction (value : OperationParameterDirection)

Property Value

A OperationParameterDirection value indicating the direction of the parameter.

Example

For examples on how to create an operation parameter by using In, see OperationParameter.

The following are code examples of ResolveOperationMetadata that uses Out and InOut properties.

Example 1: Using OperationParameterDirection.Out

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Echo/EchoDateTime":
            opMetadata.DisplayName = "EchoDateTime";
            // Create operation parameters
            OperationParameter dateParm = new OperationParameter("date", OperationParameterDirection.In, QualifiedType.DateTimeType, false);
            OperationParameter echoedDateParm = new OperationParameter("echoedDate", OperationParameterDirection.Out, QualifiedType.DateTimeType, false);
            opMetadata.Parameters.Add(dateParm);
            opMetadata.Parameters.Add(echoedDateParm);
            // Not creating any operation result here
            break;

        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the generated XML Schema Definition.

Copy Code
<xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
  <xs:element name="EchoDateTime">
    <xs:annotation>
      <xs:documentation>
        <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Echo/EchoDateTime</doc:action>
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="date" type="xs:dateTime" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="EchoDateTimeResponse">
    <xs:annotation>
      <xs:documentation>
        <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Echo/EchoDateTime/response</doc:action>
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="echoedDate" type="xs:dateTime" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xsd:schema>

Example 2: Using OperationParameterDirection.InOut

In Example 1, if you change the echoedDateParm operation parameter direction to InOut as shown in the following code, this parameter will be created in both the input and output message definition as shown in the following generated XML schema.

C# Copy Code
OperationParameter echoedDateParm = new OperationParameter("echoedDate", OperationParameterDirection.InOut, QualifiedType.DateTimeType, false);

The following is the generated XML Schema Definition.

Copy Code
<xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
  <xs:element name="EchoDateTime">
    <xs:annotation>
      <xs:documentation>
        <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Echo/EchoDateTime</doc:action>
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="date" type="xs:dateTime" />
        <xs:element minOccurs="1" maxOccurs="1" name="echoedDate" type="xs:dateTime" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="EchoDateTimeResponse">
    <xs:annotation>
      <xs:documentation>
        <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Echo/EchoDateTime/response</doc:action>
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="echoedDate" type="xs:dateTime" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xsd:schema>

Remarks

If the direction is set to Out, the parameters essentially becomes part of the result message in the generated XML Schema.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationParameter Class
OperationParameter Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationParameter.Name Property
[image]

Gets or sets the name of the parameter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationParameter
Dim value As String

value = instance.Name

instance.Name = value

Syntax

Visual Basic
Public Property Name As String
C#
public string Name { get; set; }
C++
public:
property String^ Name {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_Name ()

/** @property */
public void set_Name (String value)
JScript
public function get Name () : String

public function set Name (value : String)

Property Value

A string representing the name of the parameter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationParameter Class
OperationParameter Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationParameter.OriginalName Property
[image]

Gets or sets the original name of the parameter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationParameter
Dim value As String

value = instance.OriginalName

instance.OriginalName = value

Syntax

Visual Basic
Public Property OriginalName As String
C#
public string OriginalName { get; set; }
C++
public:
property String^ OriginalName {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_OriginalName ()

/** @property */
public void set_OriginalName (String value)
JScript
public function get OriginalName () : String

public function set OriginalName (value : String)

Property Value

A string representing the original name of the parameter.

Remarks

This value will only be different than the name if the original name contains invalid XML element name characters.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationParameter Class
OperationParameter Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationParameterDirection Enumeration
See Also Example
[image]

Describes the direction of a parameter: In, Out, or InOut, when defining an OperationParameter within ParameterizedOperationMetadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationParameterDirection

Syntax

Visual Basic
Public Enumeration OperationParameterDirection
C#
public enum OperationParameterDirection
C++
public enum class OperationParameterDirection
J#
public enum OperationParameterDirection
JScript
public enum OperationParameterDirection

Members

Member name | Description
In | In parameter indicates that the parameter is used to pass value/values to process the corresponding operation request.
InOut | InOut parameter indicates that the parameter is used to pass value/values and to get value/values back after processing an operation request.
Out | Out parameter indicates that the parameter is used to get value/values back after processing an operation request.

Example

For an example of how this class is used to specify a direction, see OperationParameter.Direction.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Microsoft.ServiceModel.Channels.Common Namespace
OperationParameter
ParameterizedOperationMetadata
IMetadataResolverHandler


OperationResult Class
See Also Example Members
[image]

Defines metadata for a result returned by an operation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationResult

Syntax

Visual Basic
Public Class OperationResult
    Inherits QualifiedTypeContainer
C#
public class OperationResult : QualifiedTypeContainer
C++
public ref class OperationResult : public QualifiedTypeContainer
J#
public class OperationResult extends QualifiedTypeContainer
JScript
public class OperationResult extends QualifiedTypeContainer

Example

For examples on how to create OperationResult with native, simple, and complex types, see the example section in the OperationResult constructor. For an example on how to create a two-way void OperationResult, see the example section in Empty.

The following example shows a one-way operation definition, with OperationResult set to null.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;

        // for illustrative purposes show how to resolve one operation here

        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "FireAndForget":
                opMetadata.DisplayName = "FireAndForget";
                opMetadata.Description = "This operation is a fire-and-forget pure one-way operation.";
                // Create operation parameters
                OperationParameter uriParm = new OperationParameter("address", OperationParameterDirection.In, QualifiedType.UriType, false);
                opMetadata.Parameters.Add(uriParm);
                // Create operation result
                opMetadata.OperationResult = null;
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }
}

The following is the generated WSDL document.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xs:element name="FireAndForget">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="address" nillable="true" type="xs:anyURI" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_FireAndForget_InputMessage">
    <wsdl:part name="parameters" element="ns2:FireAndForget" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="FireAndForget">
      <wsdl:input wsaw:Action="FireAndForget" message="ns2:SampleContract_FireAndForget_InputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

An OperationResult object describes a result for an operation. To make the operation result as an array type, you need to set isArray parameter to true.

There are two ways to define a "void" operation result within an operation:

  1. OperationResult is set to null.

    This implies the generated operation will be a IsOneWay operation. With a one-way operation, only one message is transmitted. The receiver does not send a reply message, nor does the sender expect one. The adapter developer doesn't need to create and return an empty WCF message for a given operation in IOutboundHandler and/or IInboundHandler implementation. One-way methods must not return a value or have ref or out parameters; otherwise a InvalidOperationException exception is thrown.

  2. OperationResult is set to Empty.

    This implies the generation operation will be a Two Way operation and the client will expect a reply message even if the method response is "void". If an operation metadata contains a result with value Empty, the adapter developer must return an empty WCF message to indicate to the caller that the method has returned.

Note
The BizTalk WCF adapter does NOT support WCF One Way services. In order for WCF services to work in BizTalk Server using the BizTalk WCF adapter, the service provider must define contracts using a request-reply pattern and in cases where no response is necessary, set the response to be of type “void”. All WCF clients and services that communicate with the BizTalk WCF adapter are expected to be two way, with the exception of services that use NetMsmqQueueBinding. For every other binding, BizTalk Server expects a void response back from the service (or a non-void response if using a two-way send port). This is so that BizTalk Server knows when to delete the message from the MessageBox database and thereby ensure no message loss. This applies to the adapter written to the WCF LOB Adapter SDK as well. Adapter developers should make the operation metadata by using the request-reply pattern (with void reply, that is, Empty in case of an empty response) for it to work in BizTalk Server.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.QualifiedTypeContainer
Microsoft.ServiceModel.Channels.Common.OperationResult

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationResult Members
Microsoft.ServiceModel.Channels.Common Namespace
ParameterizedOperationMetadata
ResolveOperationMetadata

Other Resources

Service Contract Samples: One-Way


OperationResult Members
See Also Constructors Methods Properties
[image]

Defines metadata for a result returned by an operation.

The following tables list the members exposed by the OperationResult type.

Public Constructors

Name | Description
OperationResult | Initializes a new instance of the OperationResult class by using the specified qualified type and a Boolean that indicates whether this OperationResult instance is an array.
Top

Public Properties

 | Name | Description
public property | DefaultValue | Gets or sets the default value for this member. (inherited from QualifiedTypeContainer)
public property | Description | Gets or sets the description for the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
 | Empty | Gets an empty OperationResult object which is equivalent to void.
public property | IsArray | Gets or sets a Boolean value indicating whether the associated member is an array. (inherited from QualifiedTypeContainer)
public property | IsEmptyOperationResult | Gets a Boolean value indicating if the current OperationResult object is Empty.
public property | IsOptional | Gets or sets a Boolean value indicating whether the type is optional. (inherited from QualifiedTypeContainer)
public property | Properties | Gets the properties dictionary of the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | QualifiedType | Gets or sets the qualified type of the associated member: simple, complex, or custom qualified type. (inherited from QualifiedTypeContainer)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GenerateXmlSchemaAnnotation | Generates annotations for the member that can be used in the XML schema that is associated with this member. (inherited from QualifiedTypeContainer)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

OperationResult Class
Microsoft.ServiceModel.Channels.Common Namespace
ParameterizedOperationMetadata
ResolveOperationMetadata

Other Resources

Service Contract Samples: One-Way


OperationResult Constructor
See Also Example
[image]

Initializes a new instance of the OperationResult class by using the specified qualified type and a Boolean that indicates whether this OperationResult instance is an array.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim qualifiedType As QualifiedType
Dim isArray As Boolean

Dim instance As New OperationResult(qualifiedType, isArray)

Syntax

Visual Basic
Public Sub New ( _
    qualifiedType As QualifiedType, _
    isArray As Boolean _
)
C#
public OperationResult (
    QualifiedType qualifiedType,
    bool isArray
)
C++
public:
OperationResult (
    QualifiedType^ qualifiedType,
    bool isArray
)
J#
public OperationResult (
    QualifiedType qualifiedType,
    boolean isArray
)
JScript
public function OperationResult (
    qualifiedType : QualifiedType,
    isArray : boolean
)

Parameters

qualifiedType

Qualified Type of the Operation Result: Simple or Complex.

isArray

true if the Operation Result is an array; otherwise, false.

Example

Example 1: Creating an OperationResult with native XML Schema type

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Echo/EchoString":
            // Syntax: String[] EchoString(String name)
            opMetadata.DisplayName = "EchoString";
            // Create Parameters
            OperationParameter name = new OperationParameter("name", OperationParameterDirection.In, QualifiedType.StringType, false);
            opMetadata.Parameters.Add(name);
            // Create Result
            opMetadata.OperationResult = new OperationResult(QualifiedType.StringType, true);
            break;

        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the generated XML Schema Definition.

Copy Code
<xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:array="http://schemas.microsoft.com/2003/10/Serialization/Arrays" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
  <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:element name="EchoString">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="name" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="EchoStringResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="EchoStringResult" nillable="true" type="array:ArrayOfstring" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xsd:schema>
<xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:array="http://schemas.microsoft.com/2003/10/Serialization/Arrays" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" version="1.0">
  <xs:complexType name="ArrayOfstring">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="unbounded" name="string" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfstring" nillable="true" type="array:ArrayOfstring" />
</xsd:schema>

Example 2: Creating an OperationResult with simple type

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Echo/EchoNumber":
            opMetadata.DisplayName = "EchoNumber";
            opMetadata.Description = "This operation defines a parameter with a restriction of 5 fraction digits";
            // Create operation parameters
            SimpleQualifiedType decimalSQT = new SimpleQualifiedType(XmlTypeCode.Decimal);
            XmlSchemaFacet facet = new XmlSchemaFractionDigitsFacet();
            facet.Value = "5";
            decimalSQT.XmlSchemaFacets.Add(facet);
            OperationParameter decimalParm = new OperationParameter("number", OperationParameterDirection.In, decimalSQT, false);
            opMetadata.Parameters.Add(decimalParm);
            // Create operation result
            opMetadata.OperationResult = new OperationResult(decimalSQT, false);
            break;
        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the generate XML Schema Definition.

Copy Code
<xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
  <xs:element name="EchoNumber">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="number">
          <xs:simpleType>
            <xs:restriction base="xs:decimal">
              <xs:fractionDigits value="5" />
            </xs:restriction>
          </xs:simpleType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="EchoNumberResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="EchoNumberResult">
          <xs:simpleType>
            <xs:restriction base="xs:decimal">
              <xs:fractionDigits value="5" />
            </xs:restriction>
          </xs:simpleType>
        </xs:element>
        <xs:element minOccurs="1" maxOccurs="1" name="echoedNumber">
          <xs:simpleType>
            <xs:restriction base="xs:decimal">
              <xs:fractionDigits value="5" />
            </xs:restriction>
          </xs:simpleType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xsd:schema>

Example 3: Creating an OperationResult with complex type

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    // for illustrative purposes show how to resolve one operation here
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    switch (operationId)
    {
        case "/Echo/EchoComplexObject":
            // Syntax: SampleComplexObject[] EchoComplexObject(SampleComplexObject complexObject)
            opMetadata.DisplayName = "EchoComplexObject";
            // Create Parameters
            ComplexQualifiedType myEchoObjectQT = new ComplexQualifiedType("SampleComplexObjectType");
            OperationParameter complexObject = new OperationParameter("complexObject", OperationParameterDirection.In, myEchoObjectQT, false);
            opMetadata.Parameters.Add(complexObject);
            // Create Result
            opMetadata.OperationResult = new OperationResult(myEchoObjectQT, true);
            break;
        default:
            throw new AdapterException("Invalid operation " + operationId);
    }
    return opMetadata;
}

The following is the generated XML Schema Definition.

Copy Code
<xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
  <xs:complexType name="MyComplexObject">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="1" name="text" nillable="true" type="xs:string" />
      <xs:element minOccurs="1" maxOccurs="1" name="timestamp" type="xs:dateTime" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="MyComplexObject" nillable="true" type="ns2:MyComplexObject" />
  <xs:element name="EchoComplexObject">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="complexObject" nillable="true" type="ns2:MyComplexObject" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:complexType name="ArrayOfMyComplexObject">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="unbounded" name="MyComplexObject" type="ns2:MyComplexObject" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfMyComplexObject" nillable="true" type="ns2:ArrayOfMyComplexObject" />
  <xs:element name="EchoComplexObjectResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="EchoComplexObjectResult" nillable="true" type="ns2:ArrayOfMyComplexObject" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xsd:schema>

Remarks

The operation parameter has a type and this type can be either a native XML schema type, simple type, or a complex type.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationResult Class
OperationResult Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationResult Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GenerateXmlSchemaAnnotation | Generates annotations for the member that can be used in the XML schema that is associated with this member. (inherited from QualifiedTypeContainer)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

OperationResult Class
Microsoft.ServiceModel.Channels.Common Namespace
ParameterizedOperationMetadata
ResolveOperationMetadata

Other Resources

Service Contract Samples: One-Way


OperationResult Properties
[image]

Public Properties

 | Name | Description
public property | DefaultValue | Gets or sets the default value for this member. (inherited from QualifiedTypeContainer)
public property | Description | Gets or sets the description for the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
 | Empty | Gets an empty OperationResult object which is equivalent to void.
public property | IsArray | Gets or sets a Boolean value indicating whether the associated member is an array. (inherited from QualifiedTypeContainer)
public property | IsEmptyOperationResult | Gets a Boolean value indicating if the current OperationResult object is Empty.
public property | IsOptional | Gets or sets a Boolean value indicating whether the type is optional. (inherited from QualifiedTypeContainer)
public property | Properties | Gets the properties dictionary of the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | QualifiedType | Gets or sets the qualified type of the associated member: simple, complex, or custom qualified type. (inherited from QualifiedTypeContainer)

See Also

Reference

OperationResult Class
Microsoft.ServiceModel.Channels.Common Namespace
ParameterizedOperationMetadata
ResolveOperationMetadata

Other Resources

Service Contract Samples: One-Way


OperationResult.Empty Property
See Also Example
[image]

Gets an empty OperationResult object which is equivalent to void.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As OperationResult

value = OperationResult.Empty

Syntax

Visual Basic
Public Shared ReadOnly Property Empty As OperationResult
C#
public static OperationResult Empty { get; }
C++
public:
static property OperationResult^ Empty {
    OperationResult^ get ();
}
J#
/** @property */
public static OperationResult get_Empty ()
JScript
public static function get Empty () : OperationResult

Property Value

An empty OperationResult object which is equivalent to void.

Example

The following example shows a Two Way "void" operation definition, with OperationResult set to Empty.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;

        // for illustrative purposes show how to resolve one operation here

        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "FireAndForget":
                opMetadata.DisplayName = "FireAndForget";
                opMetadata.Description = "This operation is a fire-and-forget pure one-way operation.";
                // Create operation parameters
                OperationParameter uriParm = new OperationParameter("address", OperationParameterDirection.In, QualifiedType.UriType, false);
                opMetadata.Parameters.Add(uriParm);
                // Create operation result
                opMetadata.OperationResult = OperationResult.Empty;
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }
}

The following is the generated WSDL.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xs:element name="FireAndForget">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="address" nillable="true" type="xs:anyURI" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="FireAndForgetResponse">
        <xs:complexType>
          <xs:sequence />
        </xs:complexType>
      </xs:element>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_FireAndForget_InputMessage">
    <wsdl:part name="parameters" element="ns2:FireAndForget" />
  </wsdl:message>
  <wsdl:message name="SampleContract_FireAndForget_OutputMessage">
    <wsdl:part name="parameters" element="ns2:FireAndForgetResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="FireAndForget">
      <wsdl:input wsaw:Action="FireAndForget" message="ns2:SampleContract_FireAndForget_InputMessage" />
      <wsdl:output wsaw:Action="FireAndForget/response" message="ns2:SampleContract_FireAndForget_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

See OperationResult for more information about when and how to use this property.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

OperationResult Class
OperationResult Members
Microsoft.ServiceModel.Channels.Common Namespace


OperationResult.IsEmptyOperationResult Property
[image]

Gets a Boolean value indicating if the current OperationResult object is Empty.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As OperationResult
Dim value As Boolean

value = instance.IsEmptyOperationResult

Syntax

Visual Basic
Public ReadOnly Property IsEmptyOperationResult As Boolean
C#
public bool IsEmptyOperationResult { get; }
C++
public:
property bool IsEmptyOperationResult {
    bool get ();
}
J#
/** @property */
public boolean get_IsEmptyOperationResult ()
JScript
public function get IsEmptyOperationResult () : boolean

Property Value

true if the current OperationResult object is Empty; otherwise, false.

Remarks

This method returns true when the OperationResult is the value Empty.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

OperationResult Class
OperationResult Members
Microsoft.ServiceModel.Channels.Common Namespace


ParameterizedOperationMetadata Class
See Also Example Members
[image]

Represents the metadata for an adapter's operation with input operation parameters and output results.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ParameterizedOperationMetadata

Syntax

Visual Basic
Public Class ParameterizedOperationMetadata
    Inherits OperationMetadata
C#
public class ParameterizedOperationMetadata : OperationMetadata
C++
public ref class ParameterizedOperationMetadata : public OperationMetadata
J#
public class ParameterizedOperationMetadata extends OperationMetadata
JScript
public class ParameterizedOperationMetadata extends OperationMetadata

Example

For examples on how to use ParameterizedOperationMetadata class, see the example section of the ResolveOperationMetadata.

Remarks

This class derives from the OperationMetadata class. It is used to define input operation parameters (OperationParameter) and output operation results (OperationResult) of an operation.

The OperationParameter and OperationResult objects are passed in either a SimpleQualifiedType or ComplexQualifiedType object to represent their respective types. For detailed usage of this class, see OperationParameter and OperationResult.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.OperationMetadata
Microsoft.ServiceModel.Channels.Common.ParameterizedOperationMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ParameterizedOperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
OperationParameter
OperationResult
IMetadataResolverHandler


ParameterizedOperationMetadata Members
See Also Constructors Methods Properties
[image]

Represents the metadata for an adapter's operation with input operation parameters and output results.

The following tables list the members exposed by the ParameterizedOperationMetadata type.

Public Constructors

Name | Description
ParameterizedOperationMetadata | Overloaded. Initializes a new instance of the ParameterizedOperationMetadata class.
Top

Public Properties

 | Name | Description
public property | CanUseCommonCache | Gets or sets a Boolean value that indicates whether this type metadata can be stored in the common cache. (inherited from OperationMetadata)
public property | Description | Gets or sets the description of the operation. (inherited from OperationMetadata)
public property | DisplayName | Gets or sets the display name of the operation. (inherited from OperationMetadata)
public property | InputMessageAction | Gets the WS-Addressing Action of the input message of this operation. (inherited from OperationMetadata)
public property | IsDisposed | Gets a value indicating whether the operation was disposed. (inherited from OperationMetadata)
public property | IsOneWay | Overridden. Gets a value indicating whether the operation is one-way.
public property | LastTimeAccessed | Gets a value indicating the DateTime of the last time the metadata was accessed. (inherited from OperationMetadata)
public property | MetadataTimestamp | Gets or sets the time stamp of the operation's metadata. (inherited from OperationMetadata)
public property | NeverExpires | Gets or sets a Boolean value that indicates whether the metadata for the operation will expire. (inherited from OperationMetadata)
public property | OperationGroup | Gets or sets the operation group of this operation which is used to determine the port type in the generated Dynamic Contract (WSDL). (inherited from OperationMetadata)
public property | OperationNamespace | Gets or sets the namespace of the operation. (inherited from OperationMetadata)
public property | OperationResult | Gets or sets the operation result that is associated with this operation metadata instance.
public property | OriginalName | Gets or sets the original name of the operation. (inherited from OperationMetadata)
public property | OutputMessageAction | Gets the WS-Addressing Action of the output message of this operation. (inherited from OperationMetadata)
public property | Parameters | Gets or sets the list of all the operation parameters that are associated with this operation metadata instance.
public property | Properties | Gets the Properties dictionary of the operation. (inherited from OperationMetadata)
public property | UniqueId | Gets the unique identifier of the operation. (inherited from OperationMetadata)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. Releases all resources used by the current OperationMetadata object. (inherited from OperationMetadata)
public method | Equals | (inherited from Object)
public method | ExportInputXmlSchema | Overridden. Exports the operation's input message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | ExportOutputXmlSchema | Overridden. Exports the operation's output message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. Releases all resources used by the current OperationMetadata object. (inherited from OperationMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

ParameterizedOperationMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
OperationParameter
OperationResult
IMetadataResolverHandler


ParameterizedOperationMetadata Constructor
[image]

Initializes a new instance of the ParameterizedOperationMetadata class.

Overload List

Name | Description
ParameterizedOperationMetadata (String, String) | Initializes a new instance of the ParameterizedOperationMetadata class by using the specified operation Id and display name.
ParameterizedOperationMetadata (String, String, DateTime, Boolean) | Initializes a new instance of the ParameterizedOperationMetadata class using the specified operation Id, display name, metadata time stamp, and expiration flag.

See Also

Reference

ParameterizedOperationMetadata Class
ParameterizedOperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


ParameterizedOperationMetadata Constructor (String, String)
See Also Example
[image]

Initializes a new instance of the ParameterizedOperationMetadata class by using the specified operation Id and display name.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim operationId As String
Dim displayName As String

Dim instance As New ParameterizedOperationMetadata(operationId, displayName)

Syntax

Visual Basic
Public Sub New ( _
    operationId As String, _
    displayName As String _
)
C#
public ParameterizedOperationMetadata (
    string operationId,
    string displayName
)
C++
public:
ParameterizedOperationMetadata (
    String^ operationId,
    String^ displayName
)
J#
public ParameterizedOperationMetadata (
    String operationId,
    String displayName
)
JScript
public function ParameterizedOperationMetadata (
    operationId : String,
    displayName : String
)

Parameters

operationId

The unique operation Id for that operation.

displayName

The display name of the operation.

Example

For detailed usage of this class, see OperationParameter and OperationResult.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata("/Echo/EchoString", "Echo String");
    }
}

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ParameterizedOperationMetadata Class
ParameterizedOperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


ParameterizedOperationMetadata Constructor (String, String, DateTime, Boolean)
See Also Example
[image]

Initializes a new instance of the ParameterizedOperationMetadata class using the specified operation Id, display name, metadata time stamp, and expiration flag.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim operationId As String
Dim displayName As String
Dim metadataTimestamp As DateTime
Dim neverExpires As Boolean

Dim instance As New ParameterizedOperationMetadata(operationId, displayName, metadataTimestamp, neverExpires)

Syntax

Visual Basic
Public Sub New ( _
    operationId As String, _
    displayName As String, _
    metadataTimestamp As DateTime, _
    neverExpires As Boolean _
)
C#
public ParameterizedOperationMetadata (
    string operationId,
    string displayName,
    DateTime metadataTimestamp,
    bool neverExpires
)
C++
public:
ParameterizedOperationMetadata (
    String^ operationId,
    String^ displayName,
    DateTime metadataTimestamp,
    bool neverExpires
)
J#
public ParameterizedOperationMetadata (
    String operationId,
    String displayName,
    DateTime metadataTimestamp,
    boolean neverExpires
)
JScript
public function ParameterizedOperationMetadata (
    operationId : String,
    displayName : String,
    metadataTimestamp : DateTime,
    neverExpires : boolean
)

Parameters

operationId

The unique operation Id for that operation.

displayName

The display name of the operation.

metadataTimestamp

The timestamp of the operation's metadata.

neverExpires

true if the metadata for the operation will never expire; otherwise, false.

Example

For detailed usage of this class, see OperationParameter and OperationResult.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {

        DateTime metadataTimestamp = DateTime.Now;
        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata("/Echo/EchoString", "Echo String", metadataTimestamp, true);

    }
}

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ParameterizedOperationMetadata Class
ParameterizedOperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


ParameterizedOperationMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. Releases all resources used by the current OperationMetadata object. (inherited from OperationMetadata)
public method | Equals | (inherited from Object)
public method | ExportInputXmlSchema | Overridden. Exports the operation's input message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | ExportOutputXmlSchema | Overridden. Exports the operation's output message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. Releases all resources used by the current OperationMetadata object. (inherited from OperationMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

ParameterizedOperationMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
OperationParameter
OperationResult
IMetadataResolverHandler


ParameterizedOperationMetadata.ExportInputXmlSchema Method
[image]

Exports the operation's input message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ParameterizedOperationMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportInputXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Overrides Sub ExportInputXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public override void ExportInputXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
virtual void ExportInputXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public void ExportInputXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public override function ExportInputXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the operation uses to export its input message schema and namespaces prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

Timeout

The maximum time to wait for the completion of the operation.

Remarks

This method is called by the internal WSDL Builder of WCF LOB Adapter SDK to generate XML Schema types for an input message from specified operation metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ParameterizedOperationMetadata Class
ParameterizedOperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
IWsdlRetrieval


ParameterizedOperationMetadata.ExportOutputXmlSchema Method
See Also Example
[image]

Exports the operation's output message schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ParameterizedOperationMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportOutputXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Overrides Sub ExportOutputXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public override void ExportOutputXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
virtual void ExportOutputXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public void ExportOutputXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public override function ExportOutputXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the operation uses to export its output message schema and namespace prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

Timeout

The maximum time to wait for the completion of the operation.

Example

Consider a scenario where you are defining the operation metadata by using ParameterizedOperationMetadata and some of the parameters and/or results require additional static schema in the generated WSDL file. In our example, we will create a subclass of ParameterizedOperationMetadata and use this class in the metadata resolver. We will override the ExportInputXmlSchema method to include an additional XML Schema file in the XmlSchemaContext, which the WSDL Builder can use to generate the <types> section of the WSDL.

C# Copy Code
class MyParameterizedOperationMetadata : ParameterizedOperationMetadata
{

    public MyParameterizedOperationMetadata(string operationId, string displayName)
        : base(operationId, displayName)
    {
    }

    public override void ExportInputXmlSchema(XmlSchemaExportContext schemaExportContext, MetadataLookup metadataLookup, TimeSpan timeout)
    {
        base.ExportInputXmlSchema(schemaExportContext, metadataLookup, timeout);
        // can read from a XML Schema file
        string streamSchemaText = @"<?xml version='1.0' encoding='utf-8'?>
<xs:schema elementFormDefault='qualified' targetNamespace='sample://My.Samples.CodeSnippets/PreDefinedTypes/Blob' xmlns:xs='http://www.w3.org/2001/XMLSchema' xmlns:tns='sample://My.Samples.CodeSnippets/PreDefinedTypes/Blob'>
  <xs:complexType name='XmlBlobBody'>
    <xs:sequence>
      <xs:any minOccurs='0' processContents='lax'/>
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name='StreamBody'>
    <xs:restriction base='xs:base64Binary' />
  </xs:simpleType>
</xs:schema>
";
        StringReader reader = new StringReader(streamSchemaText);
        XmlReader schemaReader = XmlReader.Create(reader);
        XmlSchema streamXmlSchema = XmlSchema.Read(schemaReader, null);

        if (!schemaExportContext.SchemaSet.Contains(streamXmlSchema))
        {
            schemaExportContext.SchemaSet.Add(streamXmlSchema);
            string ns = "http://schemas.microsoft.com/Message";
            if (!schemaExportContext.NamespacePrefixSet.ContainsKey(ns))
            {
                schemaExportContext.NamespacePrefixSet.Add(ns, "nsPrefix");
            }
        }
        schemaReader.Close();
        reader.Close();
    }

    public override void ExportOutputXmlSchema(XmlSchemaExportContext schemaExportContext, MetadataLookup metadataLookup, TimeSpan timeout)
    {
        base.ExportOutputXmlSchema(schemaExportContext, metadataLookup, timeout);
    }
}

The following code from ResolveOperationMetadata shows how this custom operation metadata class is used.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        switch (operationId)
        {
            case "/Operations/SendStuff":
                MyParameterizedOperationMetadata myPOM = new MyParameterizedOperationMetadata(operationId, "SendStuff");
                myPOM.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
                myPOM.OperationGroup = "SampleContract";
                myPOM.Parameters.Add(new OperationParameter("parm1", OperationParameterDirection.In, QualifiedType.StringType, false));
                myPOM.Parameters.Add(new OperationParameter("parm2", OperationParameterDirection.In, QualifiedType.IntType, false));
                myPOM.OperationResult = OperationResult.Empty;
                return myPOM;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
    }
}

The following is the generated WSDL.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xs:element name="SendStuff">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="parm1" nillable="true" type="xs:string" />
            <xs:element minOccurs="1" maxOccurs="1" name="parm2" type="xs:int" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="SendStuffResponse">
        <xs:complexType>
          <xs:sequence />
        </xs:complexType>
      </xs:element>
    </xsd:schema>
    <xsd:schema xmlns:tns="sample://My.Samples.CodeSnippets/PreDefinedTypes/Blob" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets/PreDefinedTypes/Blob">
      <xs:complexType name="XmlBlobBody">
        <xs:sequence>
          <xs:any minOccurs="0" processContents="lax" />
        </xs:sequence>
      </xs:complexType>
      <xs:simpleType name="StreamBody">
        <xs:restriction base="xs:base64Binary" />
      </xs:simpleType>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_SendStuff_InputMessage">
    <wsdl:part name="parameters" element="ns2:SendStuff" />
  </wsdl:message>
  <wsdl:message name="SampleContract_SendStuff_OutputMessage">
    <wsdl:part name="parameters" element="ns2:SendStuffResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="SendStuff">
      <wsdl:input wsaw:Action="/Operations/SendStuff" message="ns2:SampleContract_SendStuff_InputMessage" />
      <wsdl:output wsaw:Action="/Operations/SendStuff/response" message="ns2:SampleContract_SendStuff_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

The ExportInputXmlSchema method is called by the internal WSDL Builder of WCF LOB Adapter SDK to generate XML Schema types for an output message from specified operation metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ParameterizedOperationMetadata Class
ParameterizedOperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


ParameterizedOperationMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanUseCommonCache | Gets or sets a Boolean value that indicates whether this type metadata can be stored in the common cache. (inherited from OperationMetadata)
public property | Description | Gets or sets the description of the operation. (inherited from OperationMetadata)
public property | DisplayName | Gets or sets the display name of the operation. (inherited from OperationMetadata)
public property | InputMessageAction | Gets the WS-Addressing Action of the input message of this operation. (inherited from OperationMetadata)
public property | IsDisposed | Gets a value indicating whether the operation was disposed. (inherited from OperationMetadata)
public property | IsOneWay | Overridden. Gets a value indicating whether the operation is one-way.
public property | LastTimeAccessed | Gets a value indicating the DateTime of the last time the metadata was accessed. (inherited from OperationMetadata)
public property | MetadataTimestamp | Gets or sets the time stamp of the operation's metadata. (inherited from OperationMetadata)
public property | NeverExpires | Gets or sets a Boolean value that indicates whether the metadata for the operation will expire. (inherited from OperationMetadata)
public property | OperationGroup | Gets or sets the operation group of this operation which is used to determine the port type in the generated Dynamic Contract (WSDL). (inherited from OperationMetadata)
public property | OperationNamespace | Gets or sets the namespace of the operation. (inherited from OperationMetadata)
public property | OperationResult | Gets or sets the operation result that is associated with this operation metadata instance.
public property | OriginalName | Gets or sets the original name of the operation. (inherited from OperationMetadata)
public property | OutputMessageAction | Gets the WS-Addressing Action of the output message of this operation. (inherited from OperationMetadata)
public property | Parameters | Gets or sets the list of all the operation parameters that are associated with this operation metadata instance.
public property | Properties | Gets the Properties dictionary of the operation. (inherited from OperationMetadata)
public property | UniqueId | Gets the unique identifier of the operation. (inherited from OperationMetadata)

See Also

Reference

ParameterizedOperationMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
OperationParameter
OperationResult
IMetadataResolverHandler


ParameterizedOperationMetadata.IsOneWay Property
[image]

Gets a value indicating whether the operation is one-way.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ParameterizedOperationMetadata
Dim value As Boolean

value = instance.IsOneWay

Syntax

Visual Basic
Public Overrides ReadOnly Property IsOneWay As Boolean
C#
public override bool IsOneWay { get; }
C++
public:
virtual property bool IsOneWay {
    bool get () override;
}
J#
/** @property */
public boolean get_IsOneWay ()
JScript
public override function get IsOneWay () : boolean

Property Value

true if the operation is one-way; otherwise, false.

Remarks

The operation can be defined as one-way by setting the OperationResult to null. For how to define a one-way operation, see OperationResult.

Note
This value cannot be assigned. It is read-only.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

ParameterizedOperationMetadata Class
ParameterizedOperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


ParameterizedOperationMetadata.OperationResult Property
See Also Example
[image]

Gets or sets the operation result that is associated with this operation metadata instance.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ParameterizedOperationMetadata
Dim value As OperationResult

value = instance.OperationResult

instance.OperationResult = value

Syntax

Visual Basic
Public Property OperationResult As OperationResult
C#
public OperationResult OperationResult { get; set; }
C++
public:
property OperationResult^ OperationResult {
    OperationResult^ get ();
    void set (OperationResult^ value);
}
J#
/** @property */
public OperationResult get_OperationResult ()

/** @property */
public void set_OperationResult (OperationResult value)
JScript
public function get OperationResult () : OperationResult

public function set OperationResult (value : OperationResult)

Property Value

The OperationResult object that is associated with this operation metadata instance.

Example

For examples, see OperationResult.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ParameterizedOperationMetadata Class
ParameterizedOperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


ParameterizedOperationMetadata.Parameters Property
See Also Example
[image]

Gets or sets the list of all the operation parameters that are associated with this operation metadata instance.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As ParameterizedOperationMetadata
Dim value As IList(Of OperationParameter)

value = instance.Parameters

instance.Parameters = value

Syntax

Visual Basic
Public Property Parameters As IList(Of OperationParameter)
C#
public IList<OperationParameter> Parameters { get; set; }
C++
public:
property IList<OperationParameter^>^ Parameters {
    IList<OperationParameter^>^ get ();
    void set (IList<OperationParameter^>^ value);
}
J#
/** @property */
public IList<OperationParameter> get_Parameters ()

/** @property */
public void set_Parameters (IList<OperationParameter> value)
JScript
public function get Parameters () : IList<OperationParameter>

public function set Parameters (value : IList<OperationParameter>)

Property Value

The list of all the operation parameters of type OperationParameter that are associated with this operation metadata instance.

Example

For examples, see OperationParameter.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ParameterizedOperationMetadata Class
ParameterizedOperationMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


PerformanceCountersSettings Class
See Also Members
[image]

Represents the performance counters settings. This class cannot be inherited.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As PerformanceCountersSettings

Syntax

Visual Basic
Public NotInheritable Class PerformanceCountersSettings
C#
public sealed class PerformanceCountersSettings
C++
public ref class PerformanceCountersSettings sealed
J#
public final class PerformanceCountersSettings
JScript
public final class PerformanceCountersSettings

Remarks

This class is designed to help you gauge your adapter's performance.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.PerformanceCountersSettings

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PerformanceCountersSettings Members
Microsoft.ServiceModel.Channels.Common Namespace
PerformanceCounters


PerformanceCountersSettings Members
See Also Methods Properties
[image]

Represents the performance counters settings. This class cannot be inherited.

The following tables list the members exposed by the PerformanceCountersSettings type.

Public Properties

 | Name | Description
public property | Enabled | Gets or sets the value indicating whether the performance counters are enabled.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

PerformanceCountersSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
PerformanceCounters


PerformanceCountersSettings Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

PerformanceCountersSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
PerformanceCounters


PerformanceCountersSettings Properties
[image]

Public Properties

 | Name | Description
public property | Enabled | Gets or sets the value indicating whether the performance counters are enabled.

See Also

Reference

PerformanceCountersSettings Class
Microsoft.ServiceModel.Channels.Common Namespace
PerformanceCounters


PerformanceCountersSettings.Enabled Property
See Also Example
[image]

Gets or sets the value indicating whether the performance counters are enabled.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As PerformanceCountersSettings
Dim value As Boolean

value = instance.Enabled

instance.Enabled = value

Syntax

Visual Basic
Public Property Enabled As Boolean
C#
public bool Enabled { get; set; }
C++
public:
property bool Enabled {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_Enabled ()

/** @property */
public void set_Enabled (boolean value)
JScript
public function get Enabled () : boolean

public function set Enabled (value : boolean)

Property Value

true if the performance counters are enabled; otherwise, false. The default value is true.

Example

For an example of exposing an adapter setting as a binding property, see the example section of the Adapter class.

Remarks

This property can be set to enable performance counters in the WCF LOB Adapter SDK. To set this flag through a configuration file by end users, expose this setting as a binding property.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PerformanceCountersSettings Class
PerformanceCountersSettings Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType Class
See Also Example Members
[image]

Defines a qualified type. This class can be only used as a base class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As QualifiedType

Syntax

Visual Basic
Public MustInherit Class QualifiedType
C#
public abstract class QualifiedType
C++
public ref class QualifiedType abstract
J#
public abstract class QualifiedType
JScript
public abstract class QualifiedType

Example

The following example shows various usages of the QualifiedType class.

Example 1: Operation Parameter

In this example, an operation parameter called "n1" odf type "double" is created.

C# Copy Code
OperationParameter parmNum1 = new OperationParameter("n1", OperationParameterDirection.In, QualifiedType.DoubleType, false);

Or

Copy Code
SimpleQualifiedType doubleSQT = new SimpleQualifiedType(XmlTypeCode.Double);
OperationParameter parmNum1 = new OperationParameter("n1", OperationParameterDirection.In, doubleSQT, false);

Example 2: Operation Result

In this example, an operation result of type "string" is created.

C# Copy Code
OperationResult result = new OperationResult(QualifiedType.StringType, false);

Example 3: Type Member

In this example, a type member called "name" is of another complex type called "FullName" with identifier "FullNameTypeID".

C# Copy Code
ComplexQualifiedType nameCQT = new ComplexQualifiedType("FullNameTypeID");
TypeMember nameParm = new TypeMember("name", nameCQT, false);

In ResolveTypeMetadata, the "FullNameTypeID" is resolved as follows:

C# Copy Code
public TypeMetadata ResolveTypeMetadata(string typeId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    switch (typeId)
    {
        case "FullNameTypeID":
            StructuredTypeMetadata fullNameTM = new StructuredTypeMetadata(typeId, "FullName");
            fullNameTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE + "/types";
            fullNameTM.Members.Add(new TypeMember("firstName", QualifiedType.StringType, false));
            fullNameTM.Members.Add(new TypeMember("lastName", QualifiedType.StringType, false));
            return fullNameTM;

        default:
            throw new AdapterException("Invalid type " + typeId);
    }
}

Example 4: Using a Combination of OperationParameter , OperationResult , and TypeMember

The following example uses a combination of OperationParameter, OperationResult, and TypeMember.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        // for illustrative purposes show how to resolve one operation here
        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "/Echo/EchoMetadataObjectModel":
                // Syntax: MetadataObjectModel EchoMetadataObjectModel(MetadataObjectModel metadataObjectModel)
                opMetadata.DisplayName = "EchoMetadataObjectModel";
                // Create Parameters
                ComplexQualifiedType momCQT = new ComplexQualifiedType("MetadataObjectModelTypeID");
                OperationParameter momParm = new OperationParameter("metadataObjectModel", OperationParameterDirection.In, momCQT, false);
                opMetadata.Parameters.Add(momParm);

                // Create Result
                opMetadata.OperationResult = new OperationResult(momCQT, false);

                // Resolve type metadata in this method instead of ResolveTypeMetadata
                extraTypeMetadataResolved = new TypeMetadataCollection();
                StructuredTypeMetadata momSTM = new StructuredTypeMetadata("MetadataObjectModelTypeID", "MetadataObjectModel");
                momSTM.TypeNamespace = SampleAdapter.SERVICENAMESPACE;
                TypeMember parmAnyType = new TypeMember("myAnyType", QualifiedType.AnyType, false);
                TypeMember parmBase64 = new TypeMember("myBase64", QualifiedType.Base64BinaryType, false);
                TypeMember parmBoolean = new TypeMember("myBoolean", QualifiedType.BooleanType, false);
                TypeMember parmByte = new TypeMember("myByte", QualifiedType.ByteType, false);
                TypeMember parmChar = new TypeMember("myChar", QualifiedType.CharType, false);
                TypeMember parmDateTime = new TypeMember("myDateTime", QualifiedType.DateTimeType, false);
                TypeMember parmDecimal = new TypeMember("myDecimal", QualifiedType.DecimalType, false);
                TypeMember parmDouble = new TypeMember("myDouble", QualifiedType.DoubleType, false);
                TypeMember parmDuration = new TypeMember("myDuration", QualifiedType.DurationType, false);
                TypeMember parmFloat = new TypeMember("myFloat", QualifiedType.FloatType, false);
                TypeMember parmGuid = new TypeMember("myGuid", QualifiedType.GuidType, false);
                TypeMember parmInt = new TypeMember("myInt", QualifiedType.IntType, false);
                TypeMember parmLong = new TypeMember("myLong", QualifiedType.LongType, false);
                TypeMember parmQName = new TypeMember("myQName", QualifiedType.QNameType, false);
                TypeMember parmShort = new TypeMember("myShort", QualifiedType.ShortType, false);
                TypeMember parmStream = new TypeMember("myStream", QualifiedType.StreamType, false);
                TypeMember parmString = new TypeMember("myString", QualifiedType.StringType, false);
                TypeMember parmUnsignedByte = new TypeMember("myUnsignedByte", QualifiedType.UnsignedByteType, false);
                TypeMember parmUnsignedInt = new TypeMember("myUnsignedInt", QualifiedType.UnsignedIntType, false);
                TypeMember parmUnsignedLong = new TypeMember("myUnsignedLong", QualifiedType.UnsignedLongType, false);
                TypeMember parmUnsignedShort = new TypeMember("myUnsignedShort", QualifiedType.UnsignedShortType, false);
                TypeMember parmUri = new TypeMember("myUri", QualifiedType.UriType, false);
                momSTM.Members.Add(parmAnyType);
                momSTM.Members.Add(parmBase64);
                momSTM.Members.Add(parmBoolean);
                momSTM.Members.Add(parmByte);
                momSTM.Members.Add(parmChar);
                momSTM.Members.Add(parmDateTime);
                momSTM.Members.Add(parmDecimal);
                momSTM.Members.Add(parmDouble);
                momSTM.Members.Add(parmDuration);
                momSTM.Members.Add(parmFloat);
                momSTM.Members.Add(parmGuid);
                momSTM.Members.Add(parmInt);
                momSTM.Members.Add(parmLong);
                momSTM.Members.Add(parmQName);
                momSTM.Members.Add(parmShort);
                momSTM.Members.Add(parmStream);
                momSTM.Members.Add(parmString);
                momSTM.Members.Add(parmUnsignedByte);
                momSTM.Members.Add(parmUnsignedInt);
                momSTM.Members.Add(parmUnsignedLong);
                momSTM.Members.Add(parmUnsignedShort);
                momSTM.Members.Add(parmUri);
                momSTM.CanUseCommonCache = true;
                extraTypeMetadataResolved.Add(momSTM);
                break;
            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }
}

The following is the generated WSDL document.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation>This WSDL is generated from SampleAdapter on 7/5/2007 1:36:00 PM.</wsdl:documentation>
  <wsdl:types>
    <xsd:schema xmlns:ns4="http://schemas.microsoft.com/Message" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns3="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
      <xs:import namespace="http://schemas.microsoft.com/Message" />
      <xs:complexType name="MetadataObjectModel">
        <xs:sequence>
          <xs:element minOccurs="1" maxOccurs="1" name="myAnyType" nillable="true" type="xs:anyType" />
          <xs:element minOccurs="1" maxOccurs="1" name="myBase64" nillable="true" type="xs:base64Binary" />
          <xs:element minOccurs="1" maxOccurs="1" name="myBoolean" type="xs:boolean" />
          <xs:element minOccurs="1" maxOccurs="1" name="myByte" type="xs:byte" />
          <xs:element minOccurs="1" maxOccurs="1" name="myChar" type="ns3:char" />
          <xs:element minOccurs="1" maxOccurs="1" name="myDateTime" type="xs:dateTime" />
          <xs:element minOccurs="1" maxOccurs="1" name="myDecimal" type="xs:decimal" />
          <xs:element minOccurs="1" maxOccurs="1" name="myDouble" type="xs:double" />
          <xs:element minOccurs="1" maxOccurs="1" name="myDuration" type="ns3:duration" />
          <xs:element minOccurs="1" maxOccurs="1" name="myFloat" type="xs:float" />
          <xs:element minOccurs="1" maxOccurs="1" name="myGuid" type="ns3:guid" />
          <xs:element minOccurs="1" maxOccurs="1" name="myInt" type="xs:int" />
          <xs:element minOccurs="1" maxOccurs="1" name="myLong" type="xs:long" />
          <xs:element minOccurs="1" maxOccurs="1" name="myQName" nillable="true" type="xs:QName" />
          <xs:element minOccurs="1" maxOccurs="1" name="myShort" type="xs:short" />
          <xs:element minOccurs="1" maxOccurs="1" name="myStream" type="ns4:StreamBody" />
          <xs:element minOccurs="1" maxOccurs="1" name="myString" nillable="true" type="xs:string" />
          <xs:element minOccurs="1" maxOccurs="1" name="myUnsignedByte" type="xs:unsignedByte" />
          <xs:element minOccurs="1" maxOccurs="1" name="myUnsignedInt" type="xs:unsignedInt" />
          <xs:element minOccurs="1" maxOccurs="1" name="myUnsignedLong" type="xs:unsignedLong" />
          <xs:element minOccurs="1" maxOccurs="1" name="myUnsignedShort" type="xs:unsignedShort" />
          <xs:element minOccurs="1" maxOccurs="1" name="myUri" nillable="true" type="xs:anyURI" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="MetadataObjectModel" nillable="true" type="ns2:MetadataObjectModel" />
      <xs:element name="EchoMetadataObjectModel">
        <xs:annotation>
          <xs:documentation>
            <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Echo/EchoMetadataObjectModel</doc:action>
          </xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="metadataObjectModel" nillable="true" type="ns2:MetadataObjectModel" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="EchoMetadataObjectModelResponse">
        <xs:annotation>
          <xs:documentation>
            <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Echo/EchoMetadataObjectModel/response</doc:action>
          </xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="EchoMetadataObjectModelResult" nillable="true" type="ns2:MetadataObjectModel" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xsd:schema>
    <xsd:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/">
      <xs:element name="anyType" nillable="true" type="xs:anyType" />
      <xs:element name="anyURI" nillable="true" type="xs:anyURI" />
      <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" />
      <xs:element name="boolean" nillable="true" type="xs:boolean" />
      <xs:element name="byte" nillable="true" type="xs:byte" />
      <xs:element name="dateTime" nillable="true" type="xs:dateTime" />
      <xs:element name="decimal" nillable="true" type="xs:decimal" />
      <xs:element name="double" nillable="true" type="xs:double" />
      <xs:element name="float" nillable="true" type="xs:float" />
      <xs:element name="int" nillable="true" type="xs:int" />
      <xs:element name="long" nillable="true" type="xs:long" />
      <xs:element name="QName" nillable="true" type="xs:QName" />
      <xs:element name="short" nillable="true" type="xs:short" />
      <xs:element name="string" nillable="true" type="xs:string" />
      <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" />
      <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" />
      <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" />
      <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" />
      <xs:element name="char" nillable="true" type="tns:char" />
      <xs:simpleType name="char">
        <xs:restriction base="xs:int" />
      </xs:simpleType>
      <xs:element name="duration" nillable="true" type="tns:duration" />
      <xs:simpleType name="duration">
        <xs:restriction base="xs:duration">
          <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
          <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
          <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
        </xs:restriction>
      </xs:simpleType>
      <xs:element name="guid" nillable="true" type="tns:guid" />
      <xs:simpleType name="guid">
        <xs:restriction base="xs:string">
          <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
        </xs:restriction>
      </xs:simpleType>
      <xs:attribute name="FactoryType" type="xs:QName" />
    </xsd:schema>
    <xsd:schema xmlns:tns="http://schemas.microsoft.com/Message" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/Message">
      <xs:simpleType name="StreamBody">
        <xs:restriction base="xs:base64Binary" />
      </xs:simpleType>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_EchoMetadataObjectModel_InputMessage">
    <wsdl:part name="parameters" element="ns2:EchoMetadataObjectModel" />
  </wsdl:message>
  <wsdl:message name="SampleContract_EchoMetadataObjectModel_OutputMessage">
    <wsdl:part name="parameters" element="ns2:EchoMetadataObjectModelResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="EchoMetadataObjectModel">
      <wsdl:input wsaw:Action="/Echo/EchoMetadataObjectModel" message="ns2:SampleContract_EchoMetadataObjectModel_InputMessage" />
      <wsdl:output wsaw:Action="/Echo/EchoMetadataObjectModel/response" message="ns2:SampleContract_EchoMetadataObjectModel_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

This abstract class is used to capture the type information for defining metadata for an operation. The type information can be captured as a native schema type, a custom simple type, and a custom complex type. The SimpleQualifiedType and ComplexQualifiedType classes derive from the QualifiedType class.

The following table shows how the members of the QualifiedType class map to the World Wide Web Consortium (W3C) XML schema types:

  • Microsoft namespace: http://schemas.microsoft.com/2003/10/Serialization/

  • W3C namespace: http://www.w3.org/2001/XMLSchema

  • The WCF LOB Adapter SDK namespace: http://schemas.microsoft.com/Message

QualifiedType member | XML Schema type | CLR type | Target namespace
AnyType | xsd:anyType | object | W3C
Base64BinaryType | xsd:base64Binary | byte[] | W3C
BooleanType | xsd:boolean | bool | W3C
ByteType | xsd:byte | sbyte | W3C
CharType | Char | Char | Microsoft
DateTimeType | xsd:dateTime | DateTime | W3C
DecimalType | xsd:decimal | decimal | W3C
DoubleType | xsd:double | double | W3C
DurationType | duration | TimeSpan | Microsoft
FloatType | xsd:float | float | W3C
GuidType | Guid | Guid | Microsoft
IntType | xsd:int | int | W3C
LongType | xsd:long | long | W3C
QNameType | xsd:QName | XmlQualifiedName | W3C
ShortType | xsd:short | short | W3C
StreamType | StreamBody | Stream (if used within the OperationParameter and/or OperationResult) byte[] if used within TypeMember. | WCF LOB Adapter SDK
StringType | xsd:string | string | W3C
UnsignedByteType | xsd:unsignedByte | byte | W3C
UnsignedIntType | xsd:unsignedInt | uint | W3C
UnsignedLongType | xsd:unsignedLong | ulong | W3C
UnsignedShortType | xsd:unsignedShort | ushort | W3C
UriType | xsd:anyUri | Uri | W3C

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.QualifiedType
Microsoft.ServiceModel.Channels.Common.ComplexQualifiedType
Microsoft.ServiceModel.Channels.Common.SimpleQualifiedType

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace
ComplexQualifiedType
SimpleQualifiedType
TypeMember
OperationParameter
OperationResult

Other Resources

Data Type Mappings in Native XML Web Services


QualifiedType Members
See Also Methods Properties Constructors
[image]

Defines a qualified type. This class can be only used as a base class.

The following tables list the members exposed by the QualifiedType type.

Protected Constructors

Name | Description
QualifiedType | Initializes a new instance of the QualifiedType class.
Top

Public Properties

Name | Description
AnyType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:anyType.
Base64BinaryType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:base64Binary.
BooleanType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:boolean.
ByteType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:byte.
CharType | Gets a ComplexQualifiedType that represents char type.
DateTimeType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:dateTime.
DecimalType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:decimal.
DoubleType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:double type.
DurationType | Gets a ComplexQualifiedType that represents duration type.
FloatType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:float.
GuidType | Gets a ComplexQualifiedType that represents Guid type.
IntType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:int.
LongType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:long.
QNameType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:QName.
ShortType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:short.
StreamType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:base64Binary type. If used within an operation parameter and/or operation result, generates a common language runtime type Stream.
StringType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:string.
StrongDataSetType | Gets a ComplexQualifiedType that represents a System.Data.DataSet.
UnsignedByteType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedByte type.
UnsignedIntType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedInt type.
UnsignedLongType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedLong type.
UnsignedShortType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedShort.
UriType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:anyURI.
WeakDataSetType | Gets a ComplexQualifiedType that represents a System.Data.DataSet.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

QualifiedType Class
Microsoft.ServiceModel.Channels.Common Namespace
ComplexQualifiedType
SimpleQualifiedType
TypeMember
OperationParameter
OperationResult

Other Resources

Data Type Mappings in Native XML Web Services


QualifiedType Constructor
[image]

Initializes a new instance of the QualifiedType class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New QualifiedType

Syntax

Visual Basic
Protected Sub New
C#
protected QualifiedType ()
C++
protected:
QualifiedType ()
J#
protected QualifiedType ()
JScript
protected function QualifiedType ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

QualifiedType Class
Microsoft.ServiceModel.Channels.Common Namespace
ComplexQualifiedType
SimpleQualifiedType
TypeMember
OperationParameter
OperationResult

Other Resources

Data Type Mappings in Native XML Web Services


QualifiedType Properties
[image]

Public Properties

Name | Description
AnyType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:anyType.
Base64BinaryType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:base64Binary.
BooleanType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:boolean.
ByteType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:byte.
CharType | Gets a ComplexQualifiedType that represents char type.
DateTimeType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:dateTime.
DecimalType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:decimal.
DoubleType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:double type.
DurationType | Gets a ComplexQualifiedType that represents duration type.
FloatType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:float.
GuidType | Gets a ComplexQualifiedType that represents Guid type.
IntType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:int.
LongType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:long.
QNameType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:QName.
ShortType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:short.
StreamType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:base64Binary type. If used within an operation parameter and/or operation result, generates a common language runtime type Stream.
StringType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:string.
StrongDataSetType | Gets a ComplexQualifiedType that represents a System.Data.DataSet.
UnsignedByteType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedByte type.
UnsignedIntType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedInt type.
UnsignedLongType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedLong type.
UnsignedShortType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedShort.
UriType | Gets a SimpleQualifiedType that represents W3C XML Schema xs:anyURI.
WeakDataSetType | Gets a ComplexQualifiedType that represents a System.Data.DataSet.

See Also

Reference

QualifiedType Class
Microsoft.ServiceModel.Channels.Common Namespace
ComplexQualifiedType
SimpleQualifiedType
TypeMember
OperationParameter
OperationResult

Other Resources

Data Type Mappings in Native XML Web Services


QualifiedType.AnyType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:anyType.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.AnyType

Syntax

Visual Basic
Public Shared ReadOnly Property AnyType As QualifiedType
C#
public static QualifiedType AnyType { get; }
C++
public:
static property QualifiedType^ AnyType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_AnyType ()
JScript
public static function get AnyType () : QualifiedType

Property Value

A SimpleQualifiedType that represents any type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.Base64BinaryType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:base64Binary.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.Base64BinaryType

Syntax

Visual Basic
Public Shared ReadOnly Property Base64BinaryType As QualifiedType
C#
public static QualifiedType Base64BinaryType { get; }
C++
public:
static property QualifiedType^ Base64BinaryType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_Base64BinaryType ()
JScript
public static function get Base64BinaryType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:base64Binary type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.BooleanType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:boolean.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.BooleanType

Syntax

Visual Basic
Public Shared ReadOnly Property BooleanType As QualifiedType
C#
public static QualifiedType BooleanType { get; }
C++
public:
static property QualifiedType^ BooleanType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_BooleanType ()
JScript
public static function get BooleanType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:boolean type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.ByteType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:byte.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.ByteType

Syntax

Visual Basic
Public Shared ReadOnly Property ByteType As QualifiedType
C#
public static QualifiedType ByteType { get; }
C++
public:
static property QualifiedType^ ByteType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_ByteType ()
JScript
public static function get ByteType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:byte type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.CharType Property
See Also Example
[image]

Gets a ComplexQualifiedType that represents char type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.CharType

Syntax

Visual Basic
Public Shared ReadOnly Property CharType As QualifiedType
C#
public static QualifiedType CharType { get; }
C++
public:
static property QualifiedType^ CharType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_CharType ()
JScript
public static function get CharType () : QualifiedType

Property Value

A ComplexQualifiedType that represents char type.

Example

For an example of using this static member, see QualifiedType.

Remarks

The char type is defined in Microsoft serialization namespace, http://schemas.microsoft.com/2003/10/Serialization/.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.DateTimeType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:dateTime.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.DateTimeType

Syntax

Visual Basic
Public Shared ReadOnly Property DateTimeType As QualifiedType
C#
public static QualifiedType DateTimeType { get; }
C++
public:
static property QualifiedType^ DateTimeType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_DateTimeType ()
JScript
public static function get DateTimeType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:dateTime type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.DecimalType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:decimal.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.DecimalType

Syntax

Visual Basic
Public Shared ReadOnly Property DecimalType As QualifiedType
C#
public static QualifiedType DecimalType { get; }
C++
public:
static property QualifiedType^ DecimalType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_DecimalType ()
JScript
public static function get DecimalType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:decimal type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.DoubleType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:double type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.DoubleType

Syntax

Visual Basic
Public Shared ReadOnly Property DoubleType As QualifiedType
C#
public static QualifiedType DoubleType { get; }
C++
public:
static property QualifiedType^ DoubleType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_DoubleType ()
JScript
public static function get DoubleType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:double type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.DurationType Property
See Also Example
[image]

Gets a ComplexQualifiedType that represents duration type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.DurationType

Syntax

Visual Basic
Public Shared ReadOnly Property DurationType As QualifiedType
C#
public static QualifiedType DurationType { get; }
C++
public:
static property QualifiedType^ DurationType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_DurationType ()
JScript
public static function get DurationType () : QualifiedType

Property Value

A ComplexQualifiedType that represents duration type.

Example

For an example of using this static member, see QualifiedType.

Remarks

The duration type is defined in Microsoft serialization namespace, http://schemas.microsoft.com/2003/10/Serialization/.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.FloatType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:float.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.FloatType

Syntax

Visual Basic
Public Shared ReadOnly Property FloatType As QualifiedType
C#
public static QualifiedType FloatType { get; }
C++
public:
static property QualifiedType^ FloatType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_FloatType ()
JScript
public static function get FloatType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:float type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.GuidType Property
See Also Example
[image]

Gets a ComplexQualifiedType that represents Guid type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.GuidType

Syntax

Visual Basic
Public Shared ReadOnly Property GuidType As QualifiedType
C#
public static QualifiedType GuidType { get; }
C++
public:
static property QualifiedType^ GuidType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_GuidType ()
JScript
public static function get GuidType () : QualifiedType

Property Value

A ComplexQualifiedType that represents Guid type.

Example

For an example of using this static member, see QualifiedType.

Remarks

The Guid type is defined in the Microsoft serialization namespace, http://schemas.microsoft.com/2003/10/Serialization/.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.IntType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:int.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.IntType

Syntax

Visual Basic
Public Shared ReadOnly Property IntType As QualifiedType
C#
public static QualifiedType IntType { get; }
C++
public:
static property QualifiedType^ IntType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_IntType ()
JScript
public static function get IntType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:int type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.LongType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:long.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.LongType

Syntax

Visual Basic
Public Shared ReadOnly Property LongType As QualifiedType
C#
public static QualifiedType LongType { get; }
C++
public:
static property QualifiedType^ LongType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_LongType ()
JScript
public static function get LongType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:long type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.QNameType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:QName.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.QNameType

Syntax

Visual Basic
Public Shared ReadOnly Property QNameType As QualifiedType
C#
public static QualifiedType QNameType { get; }
C++
public:
static property QualifiedType^ QNameType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_QNameType ()
JScript
public static function get QNameType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:QName type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.ShortType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:short.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.ShortType

Syntax

Visual Basic
Public Shared ReadOnly Property ShortType As QualifiedType
C#
public static QualifiedType ShortType { get; }
C++
public:
static property QualifiedType^ ShortType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_ShortType ()
JScript
public static function get ShortType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:short type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.StreamType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:base64Binary type. If used within an operation parameter and/or operation result, generates a common language runtime type Stream.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.StreamType

Syntax

Visual Basic
Public Shared ReadOnly Property StreamType As QualifiedType
C#
public static QualifiedType StreamType { get; }
C++
public:
static property QualifiedType^ StreamType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_StreamType ()
JScript
public static function get StreamType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:base64Binary type.

Example

The following is an example of a contract for streamed data:

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        // for illustrative purposes show how to resolve one operation here

        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "/Sample/GetStream":
                // syntax: byte[] GetStream(string data)
                opMetadata.DisplayName = "GetStream";
                opMetadata.Parameters.Add(new OperationParameter("data", OperationParameterDirection.In, QualifiedType.StringType, false));
                opMetadata.OperationResult = new OperationResult(QualifiedType.StreamType, false);
                break;

            case "/Sample/UploadStream":
                // syntax: bool UploadStream(byte[] stream)
                opMetadata.DisplayName = "UploadStream";
                opMetadata.Parameters.Add(new OperationParameter("stream", OperationParameterDirection.In, QualifiedType.StreamType, false));
                opMetadata.OperationResult = new OperationResult(QualifiedType.BooleanType, false);
                break;

            case "/Sample/EchoStream":
                // syntax: byte[] EchoStream(byte[] stream)
                opMetadata.DisplayName = "EchoStream";
                opMetadata.Parameters.Add(new OperationParameter("stream", OperationParameterDirection.In, QualifiedType.StreamType, false));
                opMetadata.OperationResult = new OperationResult(QualifiedType.StreamType, false);
                break;

            case "/Sample/GetReversedStream":
                // syntax: byte[] GetReversedStream()
                opMetadata.DisplayName = "GetReversedStream";
                opMetadata.OperationResult = new OperationResult(QualifiedType.StreamType, false);
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }
}

Use svcutil /t:metadata to generate the WSDL document from the previously defined contract.

For example -

Copy Code
svcutil /t:metadata "sample://localhost:100/DB2OLEDB/AdventureWorks?Prot
ocol=TCPIP&Driver=Test&op=/Sample/GetStream&op=/Sample/UploadStream&op=/Sample/EchoStream&op=/Sample/GetReversedStream"
Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation>This WSDL is generated from SampleAdapter on 7/5/2007 5:18:00 PM.</wsdl:documentation>
  <wsdl:types>
    <xsd:schema xmlns:tns="http://schemas.microsoft.com/Message" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/Message">
      <xs:simpleType name="StreamBody">
        <xs:restriction base="xs:base64Binary" />
      </xs:simpleType>
    </xsd:schema>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns3="http://schemas.microsoft.com/Message" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xs:import namespace="http://schemas.microsoft.com/Message" />
      <xs:element name="GetStream">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="data" nillable="true" type="xs:string" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetStreamResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="GetStreamResult" type="ns3:StreamBody" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="UploadStream">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="stream" type="ns3:StreamBody" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="UploadStreamResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="UploadStreamResult" type="xs:boolean" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="EchoStream">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="stream" type="ns3:StreamBody" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="EchoStreamResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="EchoStreamResult" type="ns3:StreamBody" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetReversedStream">
        <xs:complexType>
          <xs:sequence />
        </xs:complexType>
      </xs:element>
      <xs:element name="GetReversedStreamResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="GetReversedStreamResult" type="ns3:StreamBody" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_GetStream_InputMessage">
    <wsdl:part name="parameters" element="ns2:GetStream" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetStream_OutputMessage">
    <wsdl:part name="parameters" element="ns2:GetStreamResponse" />
  </wsdl:message>
  <wsdl:message name="SampleContract_UploadStream_InputMessage">
    <wsdl:part name="parameters" element="ns2:UploadStream" />
  </wsdl:message>
  <wsdl:message name="SampleContract_UploadStream_OutputMessage">
    <wsdl:part name="parameters" element="ns2:UploadStreamResponse" />
  </wsdl:message>
  <wsdl:message name="SampleContract_EchoStream_InputMessage">
    <wsdl:part name="parameters" element="ns2:EchoStream" />
  </wsdl:message>
  <wsdl:message name="SampleContract_EchoStream_OutputMessage">
    <wsdl:part name="parameters" element="ns2:EchoStreamResponse" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetReversedStream_InputMessage">
    <wsdl:part name="parameters" element="ns2:GetReversedStream" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetReversedStream_OutputMessage">
    <wsdl:part name="parameters" element="ns2:GetReversedStreamResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="GetStream">
      <wsdl:input wsaw:Action="/Sample/GetStream" message="ns2:SampleContract_GetStream_InputMessage" />
      <wsdl:output wsaw:Action="/Sample/GetStream/response" message="ns2:SampleContract_GetStream_OutputMessage" />
    </wsdl:operation>
    <wsdl:operation name="UploadStream">
      <wsdl:input wsaw:Action="/Sample/UploadStream" message="ns2:SampleContract_UploadStream_InputMessage" />
      <wsdl:output wsaw:Action="/Sample/UploadStream/response" message="ns2:SampleContract_UploadStream_OutputMessage" />
    </wsdl:operation>
    <wsdl:operation name="EchoStream">
      <wsdl:input wsaw:Action="/Sample/EchoStream" message="ns2:SampleContract_EchoStream_InputMessage" />
      <wsdl:output wsaw:Action="/Sample/EchoStream/response" message="ns2:SampleContract_EchoStream_OutputMessage" />
    </wsdl:operation>
    <wsdl:operation name="GetReversedStream">
      <wsdl:input wsaw:Action="/Sample/GetReversedStream" message="ns2:SampleContract_GetReversedStream_InputMessage" />
      <wsdl:output wsaw:Action="/Sample/GetReversedStream/response" message="ns2:SampleContract_GetReversedStream_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Use svcutil.exe to generate the proxy from this contract.

Copy Code
For example -
svcutil /out:streamsample.cs "sample://localhost:100/DB2OLEDB/AdventureW
orks?Protocol=TCPIP&Driver=Test&op=/Sample/GetStream&op=/Sample/UploadStream&op=/Sample/EchoStream&op=/Sample/GetReversedStream"

[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.ServiceContractAttribute(Namespace="sample://My.Samples.CodeSnippets", ConfigurationName="SampleContract")]
public interface SampleContract
{

    [System.ServiceModel.OperationContractAttribute(Action="/Sample/GetStream", ReplyAction="/Sample/GetStream/response")]
    System.IO.Stream GetStream(string data);

    [System.ServiceModel.OperationContractAttribute(Action="/Sample/UploadStream", ReplyAction="/Sample/UploadStream/response")]
    bool UploadStream(System.IO.Stream stream);

    [System.ServiceModel.OperationContractAttribute(Action="/Sample/EchoStream", ReplyAction="/Sample/EchoStream/response")]
    System.IO.Stream EchoStream(System.IO.Stream stream);

    [System.ServiceModel.OperationContractAttribute(Action="/Sample/GetReversedStream", ReplyAction="/Sample/GetReversedStream/response")]
    System.IO.Stream GetReversedStream();
}

[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
public interface SampleContractChannel : SampleContract, System.ServiceModel.IClientChannel
{
}

[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
public partial class SampleContractClient : System.ServiceModel.ClientBase<SampleContract>, SampleContract
{

    public SampleContractClient()
    {
    }

    public SampleContractClient(string endpointConfigurationName) :
            base(endpointConfigurationName)
    {
    }

    public SampleContractClient(string endpointConfigurationName, string remoteAddress) :
            base(endpointConfigurationName, remoteAddress)
    {
    }

    public SampleContractClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
            base(endpointConfigurationName, remoteAddress)
    {
    }

    public SampleContractClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
            base(binding, remoteAddress)
    {
    }

    public System.IO.Stream GetStream(string data)
    {
        return base.Channel.GetStream(data);
    }

    public bool UploadStream(System.IO.Stream stream)
    {
        return base.Channel.UploadStream(stream);
    }

    public System.IO.Stream EchoStream(System.IO.Stream stream)
    {
        return base.Channel.EchoStream(stream);
    }

    public System.IO.Stream GetReversedStream()
    {
        return base.Channel.GetReversedStream();
    }
}

Remarks

WCF can send messages by using either buffered or streamed transfers. In the default buffered transfer mode, a message must be completely delivered before a receiver can read it. In the streaming transfer mode, the receiver can begin to process the message before it is completely delivered. The streaming mode is useful when the information that is passed is lengthy and can be processed serially. Streaming mode is also useful when the message is too large to be entirely buffered.

To stream data, the operation metadata must satisfy two requirements:

  1. The parameter that holds the data to be streamed must be the only parameter in the method. For example, if the input message is the one to be streamed, the operation must have exactly one input parameter. Similarly, if the output message is to be streamed, the operation must have either exactly one output parameter or a return value.

  2. At least one of the types of the parameter and return value must be either Stream or Message.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace

Other Resources

How to: Enable Streaming in WCF


QualifiedType.StringType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:string.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.StringType

Syntax

Visual Basic
Public Shared ReadOnly Property StringType As QualifiedType
C#
public static QualifiedType StringType { get; }
C++
public:
static property QualifiedType^ StringType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_StringType ()
JScript
public static function get StringType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:string type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.StrongDataSetType Property
[image]

Gets a ComplexQualifiedType that represents a System.Data.DataSet.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As ComplexQualifiedType

value = QualifiedType.StrongDataSetType

Syntax

Visual Basic
Public Shared ReadOnly Property StrongDataSetType As ComplexQualifiedType
C#
public static ComplexQualifiedType StrongDataSetType { get; }
C++
public:
static property ComplexQualifiedType^ StrongDataSetType {
    ComplexQualifiedType^ get ();
}
J#
/** @property */
public static ComplexQualifiedType get_StrongDataSetType ()
JScript
public static function get StrongDataSetType () : ComplexQualifiedType

Property Value

Returns a ComplexQualifiedType that represents a System.Data.DataSet.

Remarks

This QualifiedType should only be used if the adapter will be consumed by a .NET application. If the adapter will be consumed by BizTalk, use WeakDataSetType instead.

Note
When returning StrongDataSetType, CompileWsdl must be set to false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.UnsignedByteType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedByte type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.UnsignedByteType

Syntax

Visual Basic
Public Shared ReadOnly Property UnsignedByteType As QualifiedType
C#
public static QualifiedType UnsignedByteType { get; }
C++
public:
static property QualifiedType^ UnsignedByteType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_UnsignedByteType ()
JScript
public static function get UnsignedByteType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:unsignedByte type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.UnsignedIntType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedInt type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.UnsignedIntType

Syntax

Visual Basic
Public Shared ReadOnly Property UnsignedIntType As QualifiedType
C#
public static QualifiedType UnsignedIntType { get; }
C++
public:
static property QualifiedType^ UnsignedIntType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_UnsignedIntType ()
JScript
public static function get UnsignedIntType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:unsignedInt type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.UnsignedLongType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedLong type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.UnsignedLongType

Syntax

Visual Basic
Public Shared ReadOnly Property UnsignedLongType As QualifiedType
C#
public static QualifiedType UnsignedLongType { get; }
C++
public:
static property QualifiedType^ UnsignedLongType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_UnsignedLongType ()
JScript
public static function get UnsignedLongType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:unsignedLong type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.UnsignedShortType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:unsignedShort.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.UnsignedShortType

Syntax

Visual Basic
Public Shared ReadOnly Property UnsignedShortType As QualifiedType
C#
public static QualifiedType UnsignedShortType { get; }
C++
public:
static property QualifiedType^ UnsignedShortType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_UnsignedShortType ()
JScript
public static function get UnsignedShortType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:unsignedShort type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.UriType Property
See Also Example
[image]

Gets a SimpleQualifiedType that represents W3C XML Schema xs:anyURI.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As QualifiedType

value = QualifiedType.UriType

Syntax

Visual Basic
Public Shared ReadOnly Property UriType As QualifiedType
C#
public static QualifiedType UriType { get; }
C++
public:
static property QualifiedType^ UriType {
    QualifiedType^ get ();
}
J#
/** @property */
public static QualifiedType get_UriType ()
JScript
public static function get UriType () : QualifiedType

Property Value

A SimpleQualifiedType that represents W3C XML Schema xs:anyURI type.

Example

For an example of using this static member, see QualifiedType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedType.WeakDataSetType Property
[image]

Gets a ComplexQualifiedType that represents a System.Data.DataSet.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As ComplexQualifiedType

value = QualifiedType.WeakDataSetType

Syntax

Visual Basic
Public Shared ReadOnly Property WeakDataSetType As ComplexQualifiedType
C#
public static ComplexQualifiedType WeakDataSetType { get; }
C++
public:
static property ComplexQualifiedType^ WeakDataSetType {
    ComplexQualifiedType^ get ();
}
J#
/** @property */
public static ComplexQualifiedType get_WeakDataSetType ()
JScript
public static function get WeakDataSetType () : ComplexQualifiedType

Property Value

Returns a ComplexQualifiedType that represents a System.Data.DataSet.

Remarks

Return DataSet values as WeakDataSetType if the adapter will be used with BizTalk Server.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedType Class
QualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedTypeContainer Class
See Also Example Members
[image]

Defines an operation parameter, an operation result, a type member, or a custom member.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As QualifiedTypeContainer

Syntax

Visual Basic
Public Class QualifiedTypeContainer
C#
public class QualifiedTypeContainer
C++
public ref class QualifiedTypeContainer
J#
public class QualifiedTypeContainer
JScript
public class QualifiedTypeContainer

Example

For examples on how to use the OperationParameter, OperationResult, and TypeMember classes, see the example sections of these classes.

Remarks

This class is used to define metadata for an operation and/or type in your adapter implementation of IMetadataResolverHandler.

The following classes inherit from the QualifiedTypeContainer class:

  • OperationParameter

  • OperationResult

  • TypeMember

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.QualifiedTypeContainer
Microsoft.ServiceModel.Channels.Common.OperationParameter
Microsoft.ServiceModel.Channels.Common.OperationResult
Microsoft.ServiceModel.Channels.Common.TypeMember

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedTypeContainer Members
Microsoft.ServiceModel.Channels.Common Namespace
StructuredTypeMetadata
ParameterizedOperationMetadata
IMetadataResolverHandler


QualifiedTypeContainer Members
See Also Methods Properties Constructors
[image]

Defines an operation parameter, an operation result, a type member, or a custom member.

The following tables list the members exposed by the QualifiedTypeContainer type.

Protected Constructors

Name | Description
QualifiedTypeContainer | Initializes a new instance of the QualifiedTypeContainer class using the specified qualified type and a Boolean flag that indicates whether the associated member is an array.
Top

Public Properties

 | Name | Description
public property | DefaultValue | Gets or sets the default value for this member.
public property | Description | Gets or sets the description for the current QualifiedTypeContainer object.
public property | IsArray | Gets or sets a Boolean value indicating whether the associated member is an array.
public property | IsOptional | Gets or sets a Boolean value indicating whether the type is optional.
public property | Properties | Gets the properties dictionary of the current QualifiedTypeContainer object.
public property | QualifiedType | Gets or sets the qualified type of the associated member: simple, complex, or custom qualified type.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GenerateXmlSchemaAnnotation | Generates annotations for the member that can be used in the XML schema that is associated with this member.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

QualifiedTypeContainer Class
Microsoft.ServiceModel.Channels.Common Namespace
StructuredTypeMetadata
ParameterizedOperationMetadata
IMetadataResolverHandler


QualifiedTypeContainer Constructor
[image]

Initializes a new instance of the QualifiedTypeContainer class using the specified qualified type and a Boolean flag that indicates whether the associated member is an array.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim qualifiedType As QualifiedType
Dim isArray As Boolean

Dim instance As New QualifiedTypeContainer(qualifiedType, isArray)

Syntax

Visual Basic
Protected Sub New ( _
    qualifiedType As QualifiedType, _
    isArray As Boolean _
)
C#
protected QualifiedTypeContainer (
    QualifiedType qualifiedType,
    bool isArray
)
C++
protected:
QualifiedTypeContainer (
    QualifiedType^ qualifiedType,
    bool isArray
)
J#
protected QualifiedTypeContainer (
    QualifiedType qualifiedType,
    boolean isArray
)
JScript
protected function QualifiedTypeContainer (
    qualifiedType : QualifiedType,
    isArray : boolean
)

Parameters

qualifiedType

Qualified type of the member: simple, complex, or custom qualified type.

isArray

true if the member is an array member; otherwise, false.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedTypeContainer Class
QualifiedTypeContainer Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedTypeContainer Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GenerateXmlSchemaAnnotation | Generates annotations for the member that can be used in the XML schema that is associated with this member.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

QualifiedTypeContainer Class
Microsoft.ServiceModel.Channels.Common Namespace
StructuredTypeMetadata
ParameterizedOperationMetadata
IMetadataResolverHandler


QualifiedTypeContainer.GenerateXmlSchemaAnnotation Method
[image]

Generates annotations for the member that can be used in the XML schema that is associated with this member.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As QualifiedTypeContainer
Dim returnValue As XmlSchemaAnnotation

returnValue = instance.GenerateXmlSchemaAnnotation

Syntax

Visual Basic
Public Overridable Function GenerateXmlSchemaAnnotation As XmlSchemaAnnotation
C#
public virtual XmlSchemaAnnotation GenerateXmlSchemaAnnotation ()
C++
public:
virtual XmlSchemaAnnotation^ GenerateXmlSchemaAnnotation ()
J#
public XmlSchemaAnnotation GenerateXmlSchemaAnnotation ()
JScript
public function GenerateXmlSchemaAnnotation () : XmlSchemaAnnotation

Return Value

An XmlSchemaAnnotation object describing the member.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedTypeContainer Class
QualifiedTypeContainer Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedTypeContainer Properties
[image]

Public Properties

 | Name | Description
public property | DefaultValue | Gets or sets the default value for this member.
public property | Description | Gets or sets the description for the current QualifiedTypeContainer object.
public property | IsArray | Gets or sets a Boolean value indicating whether the associated member is an array.
public property | IsOptional | Gets or sets a Boolean value indicating whether the type is optional.
public property | Properties | Gets the properties dictionary of the current QualifiedTypeContainer object.
public property | QualifiedType | Gets or sets the qualified type of the associated member: simple, complex, or custom qualified type.

See Also

Reference

QualifiedTypeContainer Class
Microsoft.ServiceModel.Channels.Common Namespace
StructuredTypeMetadata
ParameterizedOperationMetadata
IMetadataResolverHandler


QualifiedTypeContainer.DefaultValue Property
See Also Example
[image]

Gets or sets the default value for this member.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As QualifiedTypeContainer
Dim value As String

value = instance.DefaultValue

instance.DefaultValue = value

Syntax

Visual Basic
Public Property DefaultValue As String
C#
public string DefaultValue { get; set; }
C++
public:
property String^ DefaultValue {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_DefaultValue ()

/** @property */
public void set_DefaultValue (String value)
JScript
public function get DefaultValue () : String

public function set DefaultValue (value : String)

Property Value

A string containing the default value for this member.

Example

The following example shows a usage of OperationMetadata.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;
        // for illustrative purposes show how to resolve one operation here
        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "/Echo/EchoString":
                // Syntax: String[] EchoString(String name)
                opMetadata.DisplayName = "EchoString";
                opMetadata.Description = "This method echoes the incoming string COUNT number of times.";
                // Create Parameters
                OperationParameter nameParm = new OperationParameter("name", OperationParameterDirection.In, QualifiedType.StringType, false);
                nameParm.Description = "An input string.";
                nameParm.DefaultValue = "Bonjour";
                opMetadata.Parameters.Add(nameParm);
                // Create Result
                opMetadata.OperationResult = new OperationResult(QualifiedType.StringType, true);
                opMetadata.OperationResult.Description = "Array of input string returned as a result.";
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }
}

The following is the generated XML schema element.

Copy Code
<xs:element name="EchoString">
    <xs:annotation>
      <xs:documentation>
        <doc:action>/Echo/EchoString</doc:action>
        <doc:description>This method echoes the incoming string COUNT number of times.</doc:description>
      </xs:documentation>
    </xs:annotation>
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" default="Bonjour" name="name" nillable="true" type="xs:string">
          <xs:annotation>
            <xs:documentation>An input string.</xs:documentation>
          </xs:annotation>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
</xs:element>

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

QualifiedTypeContainer Class
QualifiedTypeContainer Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedTypeContainer.Description Property
See Also Example
[image]

Gets or sets the description for the current QualifiedTypeContainer object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As QualifiedTypeContainer
Dim value As String

value = instance.Description

instance.Description = value

Syntax

Visual Basic
Public Property Description As String
C#
public string Description { get; set; }
C++
public:
property String^ Description {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_Description ()

/** @property */
public void set_Description (String value)
JScript
public function get Description () : String

public function set Description (value : String)

Property Value

A string containing a description for the member.

Example

The following example shows how to use this property. You can find the complete code within the example section of the method ResolveOperationMetadata.

C# Copy Code
ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
opMetadata.OperationGroup = "SampleContract";
opMetadata.DisplayName = "EchoString";
opMetadata.Description = "This method echoes the incoming string COUNT number of times.";
// Create Parameters
OperationParameter nameParm = new OperationParameter("name", OperationParameterDirection.In, QualifiedType.StringType, false);
nameParm.Description = "An input string.";
opMetadata.Parameters.Add(nameParm);
// Create Result
opMetadata.OperationResult = new OperationResult(QualifiedType.StringType, true);
opMetadata.OperationResult.Description = "Array of input string returned as a result.";

The following is the generated XML Schema definition for input parameter "name".

Copy Code
<xs:element name="EchoString">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="name" nillable="true" type="xs:string">
          <xs:annotation>
            <xs:documentation>An input string.</xs:documentation>
          </xs:annotation>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
</xs:element>

Remarks

If this property is set for an operation parameter, operation result, and/or type member, the WSDL Builder generates <xsd:annotation><xsd:documentation> elements for the operation parameter, operation result, and/or type member.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

QualifiedTypeContainer Class
QualifiedTypeContainer Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedTypeContainer.IsArray Property
See Also Example
[image]

Gets or sets a Boolean value indicating whether the associated member is an array.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As QualifiedTypeContainer
Dim value As Boolean

value = instance.IsArray

instance.IsArray = value

Syntax

Visual Basic
Public Property IsArray As Boolean
C#
public bool IsArray { get; set; }
C++
public:
property bool IsArray {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_IsArray ()

/** @property */
public void set_IsArray (boolean value)
JScript
public function get IsArray () : boolean

public function set IsArray (value : boolean)

Property Value

true if type is an array member; otherwise, false.

Example

The following example shows how to createg an array type in the following situations:

  • OperationResult: An array of complex type "Greeting" is returned as a result from the operation.

  • TypeMember: An element called "historyMsgs" is created within "Greeting" and is an array of the string.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;

        // for illustrative purposes show how to resolve one operation here

        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "/Echo/EchoGreeting":
                // Syntax: Greeting[] EchoGreeting(Greeting greeting)
                opMetadata.DisplayName = "EchoGreeting";
                opMetadata.Description = "Sample documentation for this operation";
                // Create parameters
                ComplexQualifiedType greetingCQT = new ComplexQualifiedType("/Types/Greeting");
                OperationParameter parmGreeting = new OperationParameter("greeting", OperationParameterDirection.In, greetingCQT, false);
                parmGreeting.Description = "Input greeting.";
                opMetadata.Parameters.Add(parmGreeting);
                // Create result
                opMetadata.OperationResult = new OperationResult(greetingCQT, true);
                opMetadata.OperationResult.Description = "Output greeting array.";
                // Instead of resolving the type in ResolveTypeMetadata(), resolve it here
                extraTypeMetadataResolved = new TypeMetadataCollection();
                // Greeting type
                StructuredTypeMetadata greetingTM = new StructuredTypeMetadata("/Types/Greeting", "Greeting");
                ComplexQualifiedType nameCQT = new ComplexQualifiedType("/Types/Name");
                TypeMember memberNameParm = new TypeMember("name", nameCQT, false);
                memberNameParm.Description = "Name of the person who wrote this greeting.";
                TypeMember historyMsgParm = new TypeMember("historyMsgs", QualifiedType.StringType, true);
                greetingTM.Members.Add(memberNameParm);
                greetingTM.Members.Add(historyMsgParm);
                greetingTM.CanUseCommonCache = true;
                // Name type
                StructuredTypeMetadata nameTM = new StructuredTypeMetadata("/Types/Name", "Name");
                nameTM.Members.Add(new TypeMember("firstName", QualifiedType.StringType, false));
                nameTM.Members.Add(new TypeMember("lastName", QualifiedType.StringType, false));
                nameTM.CanUseCommonCache = true;
                // Add Greeting and Name typemetadata in the collection
                extraTypeMetadataResolved.Add(greetingTM);
                extraTypeMetadataResolved.Add(nameTM);
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }
}

The following is the generated WSDL document.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation>This WSDL is generated from SampleAdapter on 7/5/2007 11:30:55 AM.</wsdl:documentation>
  <wsdl:types>
    <xsd:schema xmlns:ns1="sample" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xs:import namespace="sample" />
      <xs:element name="EchoGreeting">
        <xs:annotation>
          <xs:documentation>
            <doc:action>/Echo/EchoGreeting</doc:action>
            <doc:description>Sample documentation for this operation</doc:description>
          </xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="greeting" nillable="true" type="ns1:Greeting">
              <xs:annotation>
                <xs:documentation>Input greeting.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="EchoGreetingResponse">
        <xs:annotation>
          <xs:documentation>
            <doc:action>/Echo/EchoGreeting/response</doc:action>
            <doc:description>Sample documentation for this operation</doc:description>
          </xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="EchoGreetingResult" nillable="true" type="ns1:ArrayOfGreeting">
              <xs:annotation>
                <xs:documentation>Output greeting array.</xs:documentation>
              </xs:annotation>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xsd:schema>
    <xsd:schema xmlns:ns1="sample" xmlns:array="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample" version="1.0">
      <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
      <xs:complexType name="Greeting">
        <xs:sequence>
          <xs:element minOccurs="1" maxOccurs="1" name="name" nillable="true" type="ns1:Name">
            <xs:annotation>
              <xs:documentation>Name of the person who wrote this greeting.</xs:documentation>
            </xs:annotation>
          </xs:element>
          <xs:element minOccurs="1" maxOccurs="1" name="historyMsgs" nillable="true" type="array:ArrayOfstring" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="Greeting" nillable="true" type="ns1:Greeting" />
      <xs:complexType name="Name">
        <xs:sequence>
          <xs:element minOccurs="1" maxOccurs="1" name="firstName" nillable="true" type="xs:string" />
          <xs:element minOccurs="1" maxOccurs="1" name="lastName" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="Name" nillable="true" type="ns1:Name" />
      <xs:complexType name="ArrayOfGreeting">
        <xs:sequence>
          <xs:element minOccurs="1" maxOccurs="unbounded" name="Greeting" type="ns1:Greeting" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="ArrayOfGreeting" nillable="true" type="ns1:ArrayOfGreeting" />
    </xsd:schema>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:array="http://schemas.microsoft.com/2003/10/Serialization/Arrays" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" version="1.0">
      <xs:complexType name="ArrayOfstring">
        <xs:sequence>
          <xs:element minOccurs="1" maxOccurs="unbounded" name="string" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="ArrayOfstring" nillable="true" type="array:ArrayOfstring" />
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_EchoGreeting_InputMessage">
    <wsdl:part name="parameters" element="ns2:EchoGreeting" />
  </wsdl:message>
  <wsdl:message name="SampleContract_EchoGreeting_OutputMessage">
    <wsdl:part name="parameters" element="ns2:EchoGreetingResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="EchoGreeting">
      <wsdl:documentation>
        <doc:adapterOperationDocumentation>
          <doc:summary>Sample documentation for this operation</doc:summary>
          <doc:param name="greeting">Input greeting.</doc:param>
          <doc:returns>Output greeting array.</doc:returns>
        </doc:adapterOperationDocumentation>
      </wsdl:documentation>
      <wsdl:input wsaw:Action="/Echo/EchoGreeting" message="ns2:SampleContract_EchoGreeting_InputMessage" />
      <wsdl:output wsaw:Action="/Echo/EchoGreeting/response" message="ns2:SampleContract_EchoGreeting_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

QualifiedTypeContainer Class
QualifiedTypeContainer Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedTypeContainer.IsOptional Property
See Also Example
[image]

Gets or sets a Boolean value indicating whether the type is optional.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As QualifiedTypeContainer
Dim value As Boolean

value = instance.IsOptional

instance.IsOptional = value

Syntax

Visual Basic
Public Property IsOptional As Boolean
C#
public bool IsOptional { get; set; }
C++
public:
property bool IsOptional {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_IsOptional ()

/** @property */
public void set_IsOptional (boolean value)
JScript
public function get IsOptional () : boolean

public function set IsOptional (value : boolean)

Property Value

true if type is optional; otherwise, false.

Example

The following example shows a usage of the OperationMetadata class.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;

        // for illustrative purposes show how to resolve one operation here

        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "/Sample/UpdateData":
                // Syntax: bool UpdateData(string uniqueID, string duration, char[] data)
                opMetadata.DisplayName = "UpdateData";
                // Create parameters
                OperationParameter parmUniqueID = new OperationParameter("uniqueID", OperationParameterDirection.In, QualifiedType.GuidType, false);
                OperationParameter parmDuration = new OperationParameter("duration", OperationParameterDirection.In, QualifiedType.DurationType, false);
                OperationParameter parmData = new OperationParameter("data", OperationParameterDirection.In, QualifiedType.CharType, true);
                parmData.IsOptional = true;
                opMetadata.Parameters.Add(parmUniqueID);
                opMetadata.Parameters.Add(parmDuration);
                opMetadata.Parameters.Add(parmData);
                // Create result
                opMetadata.OperationResult = new OperationResult(QualifiedType.BooleanType, false);
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }
}

The following is the generated XML schema element.

Copy Code
<xs:element name="UpdateData">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="uniqueID" type="ns3:guid" />
        <xs:element minOccurs="1" maxOccurs="1" name="duration" type="ns3:duration" />
        <xs:element minOccurs="0" maxOccurs="1" name="data" nillable="true" type="array:ArrayOfchar" />
      </xs:sequence>
    </xs:complexType>
</xs:element>

Remarks

This property maps to XML schema construct minOccurs. If this flag is set to true for an operation parameter, operation result, and/or type member, the generated XML schema definition sets minOccurs="0" for the corresponding element. Similarly, if the flag is set to false, the corresponding element has the attribute minOccurs="1".

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

QualifiedTypeContainer Class
QualifiedTypeContainer Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedTypeContainer.Properties Property
[image]

Gets the properties dictionary of the current QualifiedTypeContainer object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As QualifiedTypeContainer
Dim value As Dictionary(Of String, Object)

value = instance.Properties

Syntax

Visual Basic
Public ReadOnly Property Properties As Dictionary(Of String, Object)
C#
public Dictionary<string,Object> Properties { get; }
C++
public:
property Dictionary<String^, Object^>^ Properties {
    Dictionary<String^, Object^>^ get ();
}
J#
/** @property */
public Dictionary<String,Object> get_Properties ()
JScript
public function get Properties () : Dictionary<String,Object>

Property Value

The properties dictionary of the current QualifiedTypeContainer object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedTypeContainer Class
QualifiedTypeContainer Members
Microsoft.ServiceModel.Channels.Common Namespace


QualifiedTypeContainer.QualifiedType Property
[image]

Gets or sets the qualified type of the associated member: simple, complex, or custom qualified type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As QualifiedTypeContainer
Dim value As QualifiedType

value = instance.QualifiedType

instance.QualifiedType = value

Syntax

Visual Basic
Public Property QualifiedType As QualifiedType
C#
public QualifiedType QualifiedType { get; set; }
C++
public:
property QualifiedType^ QualifiedType {
    QualifiedType^ get ();
    void set (QualifiedType^ value);
}
J#
/** @property */
public QualifiedType get_QualifiedType ()

/** @property */
public void set_QualifiedType (QualifiedType value)
JScript
public function get QualifiedType () : QualifiedType

public function set QualifiedType (value : QualifiedType)

Property Value

A QualifiedType of the associated member: simple, complex, or custom qualified type.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

QualifiedTypeContainer Class
QualifiedTypeContainer Members
Microsoft.ServiceModel.Channels.Common Namespace


SimpleQualifiedType Class
See Also Example Members
[image]

Represents a simple World Wide Web Consortium (W3C) XML Schema primitive type for defining metadata for an operation parameter, operation result, and/or a type member.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SimpleQualifiedType

Syntax

Visual Basic
Public NotInheritable Class SimpleQualifiedType
    Inherits QualifiedType
C#
public sealed class SimpleQualifiedType : QualifiedType
C++
public ref class SimpleQualifiedType sealed : public QualifiedType
J#
public final class SimpleQualifiedType extends QualifiedType
JScript
public final class SimpleQualifiedType extends QualifiedType

Example

The following example creates an operation parameter of type decimal with the special restriction of five fraction digits.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;

        // for illustrative purposes show how to resolve one operation here

        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "/Echo/EchoNumber":
                opMetadata.DisplayName = "EchoNumber";
                opMetadata.Description = "This operation defines a parameter with a restriction of 5 fraction digits";
                // Create operation parameters
                SimpleQualifiedType decimalSQT = new SimpleQualifiedType(XmlTypeCode.Decimal);
                XmlSchemaFacet facet = new XmlSchemaFractionDigitsFacet();
                facet.Value = "5";
                decimalSQT.XmlSchemaFacets.Add(facet);
                OperationParameter decimalParm = new OperationParameter("number", OperationParameterDirection.In, decimalSQT, false);
                opMetadata.Parameters.Add(decimalParm);
                // Create operation result
                opMetadata.OperationResult = new OperationResult(decimalSQT, false);
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }
}

The following is the generated XML element for the parameter called number.

Copy Code
<xs:element name="EchoNumber">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="number">
          <xs:simpleType>
            <xs:restriction base="xs:decimal">
              <xs:fractionDigits value="5" />
            </xs:restriction>
          </xs:simpleType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
</xs:element>

For more examples on how to use the SimpleQualifiedType class, see the example sections of the ResolveTypeMetadata and ResolveOperationMetadata.

Remarks

You can use many of the QualifiedType static members to instantiate most common primitive types. Use this type if you want to enhance an existing type with restrictions, such as XmlSchemaFacet.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.QualifiedType
Microsoft.ServiceModel.Channels.Common.SimpleQualifiedType

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

SimpleQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
TypeMember
OperationParameter
OperationResult


SimpleQualifiedType Members
See Also Constructors Methods Properties
[image]

Represents a simple World Wide Web Consortium (W3C) XML Schema primitive type for defining metadata for an operation parameter, operation result, and/or a type member.

The following tables list the members exposed by the SimpleQualifiedType type.

Public Constructors

Name | Description
SimpleQualifiedType | Initializes a new instance of the SimpleQualifiedType class using the specified XmlTypeCode.
Top

Public Properties

 | Name | Description
public property | IsNillable | Gets or sets a Boolean value indicating whether the current SimpleQualifiedType object can have a null value.
public property | XmlSchemaFacets | Gets a collection of XmlSchemaFacet associated with the current SimpleQualifiedType object.
public property | XmlType | Gets the XmlTypeCode associated with the current SimpleQualifiedType object.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

SimpleQualifiedType Class
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
TypeMember
OperationParameter
OperationResult


SimpleQualifiedType Constructor
[image]

Initializes a new instance of the SimpleQualifiedType class using the specified XmlTypeCode.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim xmlType As XmlTypeCode

Dim instance As New SimpleQualifiedType(xmlType)

Syntax

Visual Basic
Public Sub New ( _
    xmlType As XmlTypeCode _
)
C#
public SimpleQualifiedType (
    XmlTypeCode xmlType
)
C++
public:
SimpleQualifiedType (
    XmlTypeCode xmlType
)
J#
public SimpleQualifiedType (
    XmlTypeCode xmlType
)
JScript
public function SimpleQualifiedType (
    xmlType : XmlTypeCode
)

Parameters

xmlType

An XML schema type that defines this SimpleQualifiedType.

Remarks

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SimpleQualifiedType Class
SimpleQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


SimpleQualifiedType Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

SimpleQualifiedType Class
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
TypeMember
OperationParameter
OperationResult


SimpleQualifiedType Properties
[image]

Public Properties

 | Name | Description
public property | IsNillable | Gets or sets a Boolean value indicating whether the current SimpleQualifiedType object can have a null value.
public property | XmlSchemaFacets | Gets a collection of XmlSchemaFacet associated with the current SimpleQualifiedType object.
public property | XmlType | Gets the XmlTypeCode associated with the current SimpleQualifiedType object.

See Also

Reference

SimpleQualifiedType Class
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler
TypeMember
OperationParameter
OperationResult


SimpleQualifiedType.IsNillable Property
See Also Example
[image]

Gets or sets a Boolean value indicating whether the current SimpleQualifiedType object can have a null value.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SimpleQualifiedType
Dim value As Boolean

value = instance.IsNillable

instance.IsNillable = value

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly")> _
Public Property IsNillable As Boolean
C#
[SuppressMessageAttribute("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly")]
public bool IsNillable { get; set; }
C++
[SuppressMessageAttribute(L"Microsoft.Naming", L"CA1704:IdentifiersShouldBeSpelledCorrectly")]
public:
property bool IsNillable {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_IsNillable ()

/** @property */
public void set_IsNillable (boolean value)
JScript
public function get IsNillable () : boolean

public function set IsNillable (value : boolean)

Property Value

true if the current SimpleQualifiedType object can have a null value; otherwise, false.

Example

The following code example is the operation parameter definition in ResolveOperationMetadata.

C# Copy Code
SimpleQualifiedType doubleSQT = new SimpleQualifiedType(XmlTypeCode.Double);
doubleSQT.IsNillable = true;
OperationParameter n2 = new OperationParameter("n2", OperationParameterDirection.In, doubleSQT, false);

The following is the generated XML schema.

Copy Code
<xs:element minOccurs="1" maxOccurs="1" name="n2" nillable="true" type="xs:double"</xs:element>

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

SimpleQualifiedType Class
SimpleQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


SimpleQualifiedType.XmlSchemaFacets Property
See Also Example
[image]

Gets a collection of XmlSchemaFacet associated with the current SimpleQualifiedType object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SimpleQualifiedType
Dim value As ICollection(Of XmlSchemaFacet)

value = instance.XmlSchemaFacets

Syntax

Visual Basic
Public ReadOnly Property XmlSchemaFacets As ICollection(Of XmlSchemaFacet)
C#
public ICollection<XmlSchemaFacet> XmlSchemaFacets { get; }
C++
public:
property ICollection<XmlSchemaFacet^>^ XmlSchemaFacets {
    ICollection<XmlSchemaFacet^>^ get ();
}
J#
/** @property */
public ICollection<XmlSchemaFacet> get_XmlSchemaFacets ()
JScript
public function get XmlSchemaFacets () : ICollection<XmlSchemaFacet>

Property Value

A collection of XmlSchemaFacet associated with the current SimpleQualifiedType object.

Example

For an example of using this property, see SimpleQualifiedType.

Remarks

XML schema facets are restrictions on XML elements. For example, the following excerpt from an XML schema definition defines an element "rating" with the restriction that it must fall between 0 and 10.

Copy Code
<xs:element name="rating">
  <xs:simpleType>
    <xs:restriction base="xs:integer">
      <xs:minInclusive value="0"/>
      <xs:maxInclusive value="10"/>
    </xs:restriction>
  </xs:simpleType>
</xs:element>

The rating restriction is an XML schema facet.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

SimpleQualifiedType Class
SimpleQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


SimpleQualifiedType.XmlType Property
[image]

Gets the XmlTypeCode associated with the current SimpleQualifiedType object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SimpleQualifiedType
Dim value As XmlTypeCode

value = instance.XmlType

Syntax

Visual Basic
Public ReadOnly Property XmlType As XmlTypeCode
C#
public XmlTypeCode XmlType { get; }
C++
public:
property XmlTypeCode XmlType {
    XmlTypeCode get ();
}
J#
/** @property */
public XmlTypeCode get_XmlType ()
JScript
public function get XmlType () : XmlTypeCode

Property Value

An XmlTypeCode associated with the current SimpleQualifiedType object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SimpleQualifiedType Class
SimpleQualifiedType Members
Microsoft.ServiceModel.Channels.Common Namespace


StreamTypeMetadata Class
See Also Example Members
[image]

Represents a type that can be streamed.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StreamTypeMetadata

Syntax

Visual Basic
Public Class StreamTypeMetadata
    Inherits TypeMetadata
C#
public class StreamTypeMetadata : TypeMetadata
C++
public ref class StreamTypeMetadata : public TypeMetadata
J#
public class StreamTypeMetadata extends TypeMetadata
JScript
public class StreamTypeMetadata extends TypeMetadata

Example

For an example of using this type metadata, see StreamType.

Remarks

Windows Communication Foundation (WCF) can send messages using either buffered or streamed transfers. In the default buffered transfer mode, a message must be completely delivered before a receiver can read it. In the streaming transfer mode, the receiver can begin to process the message before it is completely delivered. The streaming mode is useful when the information that is passed is lengthy and can be processed serially. Streaming mode is also useful when the message is too large to be entirely buffered.

The StreamTypeMetadata class can be used to define OperationParameter and/or OperationResult in OperationMetadata. The parameter that holds the data to be streamed must be the only parameter in the operation. For example, if the input message is the one to be streamed, the operation must have exactly one input parameter. Similarly, if the output message is to be streamed, the operation must have either exactly one output parameter or a return value.

Instead of using ComplexQualifiedType and then instantiating this class in ResolveTypeMetadata, you can use StreamType directly in the OperationParameter and/or OperationResult classes.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Microsoft.ServiceModel.Channels.Common.StreamTypeMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StreamTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
StreamType
IMetadataResolverHandler

Other Resources

How to: Enable Streaming in WCF


StreamTypeMetadata Members
See Also Constructors Fields Methods Properties
[image]

Represents a type that can be streamed.

The following tables list the members exposed by the StreamTypeMetadata type.

Public Constructors

Name | Description
StreamTypeMetadata | Initializes a new instance of the StreamTypeMetadata class.
Top

Public Fields

Name | Description
TypeId | The unique TypeId of the StreamTypeMetadata.
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a Boolean value indicating whether a default value can be set for this type.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

StreamTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
StreamType
IMetadataResolverHandler

Other Resources

How to: Enable Streaming in WCF


StreamTypeMetadata Fields
[image]

Public Fields

Name | Description
TypeId | The unique TypeId of the StreamTypeMetadata.

See Also

Reference

StreamTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
StreamType
IMetadataResolverHandler

Other Resources

How to: Enable Streaming in WCF


StreamTypeMetadata.TypeId Field
[image]

The unique TypeId of the StreamTypeMetadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As String

value = StreamTypeMetadata.TypeId

Syntax

Visual Basic
Public Const TypeId As String
C#
public const string TypeId
C++
public:
literal String^ TypeId
J#
public static final String TypeId
JScript
public const var TypeId : String

Remarks

This value is set to http://schemas.microsoft.com/servicemodel/adapters/Types/StreamBody.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StreamTypeMetadata Class
StreamTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StreamTypeMetadata Constructor
[image]

Initializes a new instance of the StreamTypeMetadata class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New StreamTypeMetadata

Syntax

Visual Basic
Public Sub New
C#
public StreamTypeMetadata ()
C++
public:
StreamTypeMetadata ()
J#
public StreamTypeMetadata ()
JScript
public function StreamTypeMetadata ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StreamTypeMetadata Class
StreamTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StreamTypeMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

StreamTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
StreamType
IMetadataResolverHandler

Other Resources

How to: Enable Streaming in WCF


StreamTypeMetadata.ExportXmlSchema Method
[image]

Exports the type's schema to the SchemaSet and the namespace's prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StreamTypeMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Overrides Sub ExportXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public override void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
virtual void ExportXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public override function ExportXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the type uses to export its schema and namespaces prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

timespan

The maximum time to wait for the completion of the operation.

Remarks

This method is responsible for generating XmlSchema types and elements corresponding to this type metadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StreamTypeMetadata Class
StreamTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StreamTypeMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a Boolean value indicating whether a default value can be set for this type.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)

See Also

Reference

StreamTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
StreamType
IMetadataResolverHandler

Other Resources

How to: Enable Streaming in WCF


StreamTypeMetadata.CanSetDefaultValue Property
[image]

Gets a Boolean value indicating whether a default value can be set for this type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StreamTypeMetadata
Dim value As Boolean

value = instance.CanSetDefaultValue

Syntax

Visual Basic
Public Overrides ReadOnly Property CanSetDefaultValue As Boolean
C#
public override bool CanSetDefaultValue { get; }
C++
public:
virtual property bool CanSetDefaultValue {
    bool get () override;
}
J#
/** @property */
public boolean get_CanSetDefaultValue ()
JScript
public override function get CanSetDefaultValue () : boolean

Property Value

true if a default value can be set for this type; otherwise, false.

Remarks

This type metadata returns true for this property.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StreamTypeMetadata Class
StreamTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StrongDataSetMetadata Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StrongDataSetMetadata

Syntax

Visual Basic
Public Class StrongDataSetMetadata
    Inherits TypeMetadata
C#
public class StrongDataSetMetadata : TypeMetadata
C++
public ref class StrongDataSetMetadata : public TypeMetadata
J#
public class StrongDataSetMetadata extends TypeMetadata
JScript
public class StrongDataSetMetadata extends TypeMetadata

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Microsoft.ServiceModel.Channels.Common.StrongDataSetMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StrongDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StrongDataSetMetadata Members
See Also Constructors Fields Methods Properties
[image]

The following tables list the members exposed by the StrongDataSetMetadata type.

Public Constructors

Name | Description
StrongDataSetMetadata |
Top

Public Fields

Name | Description
TypeId |
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

StrongDataSetMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace


StrongDataSetMetadata Fields
[image]

Public Fields

Name | Description
TypeId |

See Also

Reference

StrongDataSetMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace


StrongDataSetMetadata.TypeId Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As String

value = StrongDataSetMetadata.TypeId

Syntax

Visual Basic
Public Const TypeId As String
C#
public const string TypeId
C++
public:
literal String^ TypeId
J#
public static final String TypeId
JScript
public const var TypeId : String

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StrongDataSetMetadata Class
StrongDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StrongDataSetMetadata Constructor
[image]

Initializes a new instance of the StrongDataSetMetadata Class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New StrongDataSetMetadata

Syntax

Visual Basic
Public Sub New
C#
public StrongDataSetMetadata ()
C++
public:
StrongDataSetMetadata ()
J#
public StrongDataSetMetadata ()
JScript
public function StrongDataSetMetadata ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StrongDataSetMetadata Class
StrongDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StrongDataSetMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

StrongDataSetMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace


StrongDataSetMetadata.ExportXmlSchema Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StrongDataSetMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Overrides Sub ExportXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public override void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
virtual void ExportXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public override function ExportXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext
metadataLookup
timespan

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StrongDataSetMetadata Class
StrongDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StrongDataSetMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)

See Also

Reference

StrongDataSetMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace


StrongDataSetMetadata.CanSetDefaultValue Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StrongDataSetMetadata
Dim value As Boolean

value = instance.CanSetDefaultValue

Syntax

Visual Basic
Public Overrides ReadOnly Property CanSetDefaultValue As Boolean
C#
public override bool CanSetDefaultValue { get; }
C++
public:
virtual property bool CanSetDefaultValue {
    bool get () override;
}
J#
/** @property */
public boolean get_CanSetDefaultValue ()
JScript
public override function get CanSetDefaultValue () : boolean

Property Value

Returns Boolean.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StrongDataSetMetadata Class
StrongDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StructuredTypeMetadata Class
See Also Example Members
[image]

Represents the metadata for an adapter's type with type members.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StructuredTypeMetadata

Syntax

Visual Basic
Public Class StructuredTypeMetadata
    Inherits TypeMetadata
C#
public class StructuredTypeMetadata : TypeMetadata
C++
public ref class StructuredTypeMetadata : public TypeMetadata
J#
public class StructuredTypeMetadata extends TypeMetadata
JScript
public class StructuredTypeMetadata extends TypeMetadata

Example

Consider the following code example from IMetadataResolverHandler. It shows how you can create one operation metadata called "addCustomer" that takes in one input parameter of structured type "Customer". The "Customer" type has three members. The first member is "name" that is of complex type "Name". The second member is called "ssn" and is a custom simple type that includes a facet pattern. The third member "address" is also of complex type "Address". The "Name" complex type is resolved when resolving "Customer" metadata, using extraTypeMetadataResolver method parameter. The "Name" type also shows how to create an enumeration metadata for one of its members "salutation".

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    /// <summary>
    /// Returns an OperationMetadata object resolved from absolute name of the operation metadata object.
    /// The method should complete within the specified time span or throw a timeout exception.
    /// </summary>
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;

        // for illustrative purposes show how to resolve one operation here

        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "/Customer/AddCustomer":
                // Syntax: void AddCustomer(Customer customer);
                opMetadata.DisplayName = "AddCustomer";
                // Create parameters
                opMetadata.Parameters.Add(new OperationParameter("customer", OperationParameterDirection.In, new ComplexQualifiedType("Types/CustomerType"), false));
                // Create response
                opMetadata.OperationResult = OperationResult.Empty;
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }

    /// <summary>
    /// Returns a TypeMetadata object resolved from the absolute name of the type metadata object.
    /// The method should complete within the specified time span or throw a timeout exception.
    /// </summary>
    public TypeMetadata ResolveTypeMetadata(string typeId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;
        switch (typeId)
        {
            case "Types/CustomerType":
                StructuredTypeMetadata custTMD = new StructuredTypeMetadata(typeId, "Customer");
                SimpleQualifiedType ssnSQT = new SimpleQualifiedType(XmlTypeCode.Token);
                XmlSchemaPatternFacet ssnPattern = new XmlSchemaPatternFacet();
                ssnPattern.Value = "[0-9]{3}-[0-9]{2}-[0-9]{4}";
                ssnSQT.XmlSchemaFacets.Add(ssnPattern);
                TypeMember memName = new TypeMember("name", new ComplexQualifiedType("Types/CustomerNameType"), false);
                TypeMember memSSN = new TypeMember("ssn", ssnSQT, false);
                TypeMember memAddress = new TypeMember("address", new ComplexQualifiedType("Types/CustomerAddressType"), false);
                custTMD.Members.Add(memName);
                custTMD.Members.Add(memSSN);
                custTMD.Members.Add(memAddress);
                // Resolve name type here
                extraTypeMetadataResolved = new TypeMetadataCollection();
                StructuredTypeMetadata nameTMD = new StructuredTypeMetadata("Types/CustomerNameType", "Name");
                nameTMD.Members.Add(new TypeMember("firstName", QualifiedType.StringType, false));
                nameTMD.Members.Add(new TypeMember("lastName", QualifiedType.StringType, false));
                nameTMD.Members.Add(new TypeMember("middleName", QualifiedType.StringType, false));
                nameTMD.Members.Add(new TypeMember("salutation", new ComplexQualifiedType("Types/SalutationType"), false));
                nameTMD.CanUseCommonCache = true;
                extraTypeMetadataResolved.Add(nameTMD);
                // Resolve enumeration salutation here
                string[] salValues = new String[] { "Mr.", "Miss", "Mrs.", "Dr." };
                EnumTypeMetadata salTMD = new EnumTypeMetadata("Types/SalutationType", "Salutation", salValues);
                extraTypeMetadataResolved.Add(salTMD);
                // Set namespaces
                custTMD.TypeNamespace = SampleAdapter.SERVICENAMESPACE + "/types";
                nameTMD.TypeNamespace = SampleAdapter.SERVICENAMESPACE + "/types";
                salTMD.TypeNamespace = SampleAdapter.SERVICENAMESPACE + "/types";
                // Return customer type metadata
                return custTMD;

            case "Types/CustomerAddressType":
                StructuredTypeMetadata addTMD = new StructuredTypeMetadata(typeId, "CustomerAddress");
                addTMD.Members.Add(new TypeMember("street1", QualifiedType.StringType, false));
                addTMD.Members.Add(new TypeMember("street2", QualifiedType.StringType, false));
                addTMD.Members.Add(new TypeMember("city", QualifiedType.StringType, false));
                addTMD.Members.Add(new TypeMember("state", QualifiedType.StringType, false));
                SimpleQualifiedType zipSQT = new SimpleQualifiedType(XmlTypeCode.PositiveInteger);
                XmlSchemaPatternFacet zipFacet = new XmlSchemaPatternFacet();
                zipFacet.Value = @"\d{5}";
                zipSQT.XmlSchemaFacets.Add(zipFacet);
                addTMD.Members.Add(new TypeMember("zip", zipSQT, false));
                // Set type namespace
                addTMD.TypeNamespace = SampleAdapter.SERVICENAMESPACE + "/types";
                // Return address type metadata
                return addTMD;

            default:
                throw new AdapterException("Invalid type " + typeId);
        }
    }
}

The following WSDL is generated if the operation "/Customer/AddCustomer" is selected.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation>This WSDL is generated from SampleAdapter on 7/6/2007 11:14:52 AM.</wsdl:documentation>
  <wsdl:types>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns3="sample://My.Samples.CodeSnippets/types" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xs:import namespace="sample://My.Samples.CodeSnippets/types" />
      <xs:element name="AddCustomer">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="customer" nillable="true" type="ns3:Customer" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="AddCustomerResponse">
        <xs:complexType>
          <xs:sequence />
        </xs:complexType>
      </xs:element>
    </xsd:schema>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns3="sample://My.Samples.CodeSnippets/types" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets/types" version="1.0">
      <xs:complexType name="Customer">
        <xs:sequence>
          <xs:element minOccurs="1" maxOccurs="1" name="name" nillable="true" type="ns3:Name" />
          <xs:element minOccurs="1" maxOccurs="1" name="ssn" nillable="true">
            <xs:simpleType>
              <xs:restriction base="xs:token">
                <xs:pattern value="[0-9]{3}-[0-9]{2}-[0-9]{4}" />
              </xs:restriction>
            </xs:simpleType>
          </xs:element>
          <xs:element minOccurs="1" maxOccurs="1" name="address" nillable="true" type="ns3:CustomerAddress" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="Customer" nillable="true" type="ns3:Customer" />
      <xs:complexType name="Name">
        <xs:sequence>
          <xs:element minOccurs="1" maxOccurs="1" name="firstName" nillable="true" type="xs:string" />
          <xs:element minOccurs="1" maxOccurs="1" name="lastName" nillable="true" type="xs:string" />
          <xs:element minOccurs="1" maxOccurs="1" name="middleName" nillable="true" type="xs:string" />
          <xs:element minOccurs="1" maxOccurs="1" name="salutation" type="ns3:Salutation" />
        </xs:sequence>
      </xs:complexType>
      <xs:element name="Name" nillable="true" type="ns3:Name" />
      <xs:simpleType name="Salutation">
        <xs:restriction base="xs:string">
          <xs:enumeration value="Mr." />
          <xs:enumeration value="Miss" />
          <xs:enumeration value="Mrs." />
          <xs:enumeration value="Dr." />
        </xs:restriction>
      </xs:simpleType>
      <xs:element name="Salutation" type="ns3:Salutation" />
      <xs:complexType name="CustomerAddress">
        <xs:sequence>
          <xs:element minOccurs="1" maxOccurs="1" name="street1" nillable="true" type="xs:string" />
          <xs:element minOccurs="1" maxOccurs="1" name="street2" nillable="true" type="xs:string" />
          <xs:element minOccurs="1" maxOccurs="1" name="city" nillable="true" type="xs:string" />
          <xs:element minOccurs="1" maxOccurs="1" name="state" nillable="true" type="xs:string" />
          <xs:element minOccurs="1" maxOccurs="1" name="zip">
            <xs:simpleType>
              <xs:restriction base="xs:positiveInteger">
                <xs:pattern value="\d{5}" />
              </xs:restriction>
            </xs:simpleType>
          </xs:element>
        </xs:sequence>
      </xs:complexType>
      <xs:element name="CustomerAddress" nillable="true" type="ns3:CustomerAddress" />
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_AddCustomer_InputMessage">
    <wsdl:part name="parameters" element="ns2:AddCustomer" />
  </wsdl:message>
  <wsdl:message name="SampleContract_AddCustomer_OutputMessage">
    <wsdl:part name="parameters" element="ns2:AddCustomerResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="AddCustomer">
      <wsdl:input wsaw:Action="/Customer/AddCustomer" message="ns2:SampleContract_AddCustomer_InputMessage" />
      <wsdl:output wsaw:Action="/Customer/AddCustomer/response" message="ns2:SampleContract_AddCustomer_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

For more examples on how to use the StructuredTypeMetadata class, see the example sections of the ResolveOperationMetadata and ResolveTypeMetadata.

Remarks

You can use this class to represent a type data structure. For example, if you want to create a customer type that has three members, Name, SSN, and Address, you can use StructuredTypeMetadata to create this type.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Microsoft.ServiceModel.Channels.Common.StructuredTypeMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

StructuredTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler


StructuredTypeMetadata Members
See Also Constructors Methods Properties
[image]

Represents the metadata for an adapter's type with type members.

The following tables list the members exposed by the StructuredTypeMetadata type.

Public Constructors

Name | Description
StructuredTypeMetadata | Overloaded. Initializes a new instance of the StructuredTypeMetadata class.
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a Boolean value indicating whether a default value can be set for that type.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | Members | Gets or sets a list of TypeMember objects associated with the current StructuredTypeMetadata object.
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

StructuredTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler


StructuredTypeMetadata Constructor
[image]

Initializes a new instance of the StructuredTypeMetadata class.

Overload List

Name | Description
StructuredTypeMetadata (String, String) | Initializes a new instance of the StructuredTypeMetadata class by using the specified typeId and type name.
StructuredTypeMetadata (String, String, DateTime, Boolean) | Initializes a new instance of the StructuredTypeMetadata class by using the specified typeId, type name, metadata time stamp, and expiration flag.

See Also

Reference

StructuredTypeMetadata Class
StructuredTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StructuredTypeMetadata Constructor (String, String)
See Also Example
[image]

Initializes a new instance of the StructuredTypeMetadata class by using the specified typeId and type name.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeId As String
Dim typeName As String

Dim instance As New StructuredTypeMetadata(typeId, typeName)

Syntax

Visual Basic
Public Sub New ( _
    typeId As String, _
    typeName As String _
)
C#
public StructuredTypeMetadata (
    string typeId,
    string typeName
)
C++
public:
StructuredTypeMetadata (
    String^ typeId,
    String^ typeName
)
J#
public StructuredTypeMetadata (
    String typeId,
    String typeName
)
JScript
public function StructuredTypeMetadata (
    typeId : String,
    typeName : String
)

Parameters

typeId

The unique type ID for that type.

typeName

The name of the type.

Example

The following code example initializes a new instance of this class.

C# Copy Code
StructuredTypeMetadata custTMD = new StructuredTypeMetadata("Types.CustomerType", "Customer");

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

StructuredTypeMetadata Class
StructuredTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StructuredTypeMetadata Constructor (String, String, DateTime, Boolean)
[image]

Initializes a new instance of the StructuredTypeMetadata class by using the specified typeId, type name, metadata time stamp, and expiration flag.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeId As String
Dim typeName As String
Dim metadataTimestamp As DateTime
Dim neverExpires As Boolean

Dim instance As New StructuredTypeMetadata(typeId, typeName, metadataTimestamp, neverExpires)

Syntax

Visual Basic
Public Sub New ( _
    typeId As String, _
    typeName As String, _
    metadataTimestamp As DateTime, _
    neverExpires As Boolean _
)
C#
public StructuredTypeMetadata (
    string typeId,
    string typeName,
    DateTime metadataTimestamp,
    bool neverExpires
)
C++
public:
StructuredTypeMetadata (
    String^ typeId,
    String^ typeName,
    DateTime metadataTimestamp,
    bool neverExpires
)
J#
public StructuredTypeMetadata (
    String typeId,
    String typeName,
    DateTime metadataTimestamp,
    boolean neverExpires
)
JScript
public function StructuredTypeMetadata (
    typeId : String,
    typeName : String,
    metadataTimestamp : DateTime,
    neverExpires : boolean
)

Parameters

typeId

The unique type ID for that instance of the type.

typeName

The name of the type.

metadataTimestamp

The time stamp of the type's metadata.

neverExpires

true if metadata for that type will never expire; otherwise, false.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StructuredTypeMetadata Class
StructuredTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StructuredTypeMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden. Exports the type's schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

StructuredTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler


StructuredTypeMetadata.ExportXmlSchema Method
[image]

Exports the type's schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StructuredTypeMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
Public Overrides Sub ExportXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
public override void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
public:
virtual void ExportXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
public void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
public override function ExportXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the type uses to export its schema and namespace prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

timeout

The maximum time to wait for the completion of the operation.

Remarks

The WCF LOB Adapter SDK internal WSDL builder uses this method to extract the XML schema for a StructuredTypeMetadata. If you want to modify the generated schema from StructuredTypeMetadata, create a subclass of StructuredTypeMetadata, and then override the method to make changes to the generated XML schema definitions.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StructuredTypeMetadata Class
StructuredTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
ExportXmlSchema


StructuredTypeMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden. Gets a Boolean value indicating whether a default value can be set for that type.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | Members | Gets or sets a list of TypeMember objects associated with the current StructuredTypeMetadata object.
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)

See Also

Reference

StructuredTypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
IMetadataResolverHandler


StructuredTypeMetadata.CanSetDefaultValue Property
[image]

Gets a Boolean value indicating whether a default value can be set for that type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StructuredTypeMetadata
Dim value As Boolean

value = instance.CanSetDefaultValue

Syntax

Visual Basic
Public Overrides ReadOnly Property CanSetDefaultValue As Boolean
C#
public override bool CanSetDefaultValue { get; }
C++
public:
virtual property bool CanSetDefaultValue {
    bool get () override;
}
J#
/** @property */
public boolean get_CanSetDefaultValue ()
JScript
public override function get CanSetDefaultValue () : boolean

Property Value

true if a default value can be set for that type; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StructuredTypeMetadata Class
StructuredTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


StructuredTypeMetadata.Members Property
[image]

Gets or sets a list of TypeMember objects associated with the current StructuredTypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As StructuredTypeMetadata
Dim value As IList(Of TypeMember)

value = instance.Members

instance.Members = value

Syntax

Visual Basic
Public Property Members As IList(Of TypeMember)
C#
public IList<TypeMember> Members { get; set; }
C++
public:
property IList<TypeMember^>^ Members {
    IList<TypeMember^>^ get ();
    void set (IList<TypeMember^>^ value);
}
J#
/** @property */
public IList<TypeMember> get_Members ()

/** @property */
public void set_Members (IList<TypeMember> value)
JScript
public function get Members () : IList<TypeMember>

public function set Members (value : IList<TypeMember>)

Property Value

A list of TypeMember associated with the current StructuredTypeMetadata object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

StructuredTypeMetadata Class
StructuredTypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


SupportedInboundChannels Enumeration
[image]

Describes the supported inbound channel types supported by the adapter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SupportedInboundChannels

Syntax

Visual Basic
<FlagsAttribute> _
Public Enumeration SupportedInboundChannels
C#
[FlagsAttribute]
public enum SupportedInboundChannels
C++
[FlagsAttribute]
public enum class SupportedInboundChannels
J#
/** @attribute FlagsAttribute() */
public enum SupportedInboundChannels
JScript
FlagsAttribute
public enum SupportedInboundChannels

Members

Member name | Description
IInputChannel | Indicates support for IInputChannel
IInputSessionChannel | Indicates support for IInputSessionChannel
IReplyChannel | Indicates support for IReplyChannel
IReplySessionChannel | Indicates support for IReplySessionChannel

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Microsoft.ServiceModel.Channels.Common Namespace


TargetSystemException Class
See Also Members
[image]

Represents an exception that is thrown when there is an error on the target adapter's system.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TargetSystemException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class TargetSystemException
    Inherits AdapterException
C#
[SerializableAttribute]
public class TargetSystemException : AdapterException
C++
[SerializableAttribute]
public ref class TargetSystemException : public AdapterException
J#
/** @attribute SerializableAttribute() */
public class TargetSystemException extends AdapterException
JScript
SerializableAttribute
public class TargetSystemException extends AdapterException

Remarks

You can use this exception to mark the errors returned from the line-of-business system in metadata and/or message exchange handlers.

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
Microsoft.ServiceModel.Channels.Common.AdapterException
Microsoft.ServiceModel.Channels.Common.TargetSystemException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TargetSystemException Members
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


TargetSystemException Members
See Also Constructors Methods Properties
[image]

Represents an exception that is thrown when there is an error on the target adapter's system.

The following tables list the members exposed by the TargetSystemException type.

Public Constructors (see also Protected Constructors)

Name | Description
TargetSystemException | Overloaded. Initializes a new instance of the TargetSystemException class.
Top

Protected Constructors

Name | Description
TargetSystemException | Overloaded. Initializes a new instance of the TargetSystemException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

TargetSystemException Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


TargetSystemException Constructor
[image]

Initializes a new instance of the TargetSystemException class.

Overload List

Name | Description
TargetSystemException () | Initializes a new instance of the TargetSystemException class.
TargetSystemException (SerializationInfo, StreamingContext) | Initializes a new instance of the TargetSystemException class using the specified serialization information and context objects.
TargetSystemException (String) | Initializes a new instance of the TargetSystemException using the specified error message.
TargetSystemException (String, Exception) | Initializes a new instance of the TargetSystemException class with the specified error message and inner Exception.

See Also

Reference

TargetSystemException Class
TargetSystemException Members
Microsoft.ServiceModel.Channels.Common Namespace


TargetSystemException Constructor ()
[image]

Initializes a new instance of the TargetSystemException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New TargetSystemException

Syntax

Visual Basic
Public Sub New
C#
public TargetSystemException ()
C++
public:
TargetSystemException ()
J#
public TargetSystemException ()
JScript
public function TargetSystemException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TargetSystemException Class
TargetSystemException Members
Microsoft.ServiceModel.Channels.Common Namespace


TargetSystemException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the TargetSystemException class using the specified serialization information and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New TargetSystemException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected TargetSystemException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
TargetSystemException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected TargetSystemException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function TargetSystemException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TargetSystemException Class
TargetSystemException Members
Microsoft.ServiceModel.Channels.Common Namespace


TargetSystemException Constructor (String)
[image]

Initializes a new instance of the TargetSystemException using the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New TargetSystemException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public TargetSystemException (
    string message
)
C++
public:
TargetSystemException (
    String^ message
)
J#
public TargetSystemException (
    String message
)
JScript
public function TargetSystemException (
    message : String
)

Parameters

message

The message that describes the error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TargetSystemException Class
TargetSystemException Members
Microsoft.ServiceModel.Channels.Common Namespace


TargetSystemException Constructor (String, Exception)
[image]

Initializes a new instance of the TargetSystemException class with the specified error message and inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New TargetSystemException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public TargetSystemException (
    string message,
    Exception inner
)
C++
public:
TargetSystemException (
    String^ message,
    Exception^ inner
)
J#
public TargetSystemException (
    String message,
    Exception inner
)
JScript
public function TargetSystemException (
    message : String,
    inner : Exception
)

Parameters

message

The error message that explains the reason for this exception.

inner

The exception that is the cause of the current exception. If the inner parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TargetSystemException Class
TargetSystemException Members
Microsoft.ServiceModel.Channels.Common Namespace


TargetSystemException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

TargetSystemException Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


TargetSystemException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

TargetSystemException Class
Microsoft.ServiceModel.Channels.Common Namespace
AdapterException


TraceRecord Class
See Also Example Members
[image]

Used by AdapterTrace to trace the execution sequence of the code and to trace any informational data, error messages, or warnings in-WCF compliant format. This class can be only used as a base class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TraceRecord

Syntax

Visual Basic
<SerializableAttribute> _
Public MustInherit Class TraceRecord
C#
[SerializableAttribute]
public abstract class TraceRecord
C++
[SerializableAttribute]
public ref class TraceRecord abstract
J#
/** @attribute SerializableAttribute() */
public abstract class TraceRecord
JScript
SerializableAttribute
public abstract class TraceRecord

Example

Consider an adapter developer who is creating an adapter to a SQL Server database and would like to create a custom trace record for SQLConnection for use in tracing. The following example shows how to implement the custom TraceRecord class, and then use this class within the implementation of the IConnection interface. If tracing is enabled, the entry will be written to the trace log.

C# Copy Code
public class SQLConnectionTraceRecord : TraceRecord
{
    private SqlConnection connection = null;
    private Uri eventId = new Uri("http://Microsoft.Adapters.Samples.Sql/SqlConnectionTraceRecord");

    public SQLConnectionTraceRecord(SqlConnection connection)
    {
        this.connection = connection;
    }

    protected override Uri EventId
    {
        get
        {
            return this.eventId;
        }
    }

    protected override void WriteTo(System.Xml.XmlWriter writer)
    {
        writer.WriteStartElement("SqlConnection");
        writer.WriteElementString("ConnectionString", this.connection.ConnectionString);
        writer.WriteElementString("ConnectionTimeout", this.connection.ConnectionTimeout.ToString());
        writer.WriteElementString("Database", this.connection.Database);
        writer.WriteElementString("DataSource", this.connection.DataSource);
        writer.WriteElementString("PacketSize", this.connection.PacketSize.ToString());
        writer.WriteElementString("ServerVersion", this.connection.ServerVersion);
        writer.WriteElementString("State", Enum.GetName(typeof(System.Data.ConnectionState), this.connection.State));
        writer.WriteElementString("StatisticsEnabled", this.connection.StatisticsEnabled.ToString());
        writer.WriteElementString("WorkstationId", this.connection.WorkstationId);
        writer.WriteEndElement();
    }
}

Once you implement your own custom TraceRecord, you can use it in relevant places with adapter as follows:

C# Copy Code
public class SQLAdapterConnection : IConnection
{
    /// <summary>
    /// Opens the connection to the target system.
    /// </summary>
    public void Open(TimeSpan timeout)
    {
        this.sqlConnection.Open();
        SQLAdapterUtilities.Trace.Trace(
            System.Diagnostics.TraceEventType.Information,
            "http://Microsoft.Adapters.Samples.Sql/TraceCode/SQLConnectionOpened",
            "The SQL Connection was opened",
            this,
            new SQLConnectionTraceRecord(this.SqlConnection));

    }
}

If tracing is enabled, the following entry will be written to the trace log for the previous code example.

Copy Code
<TraceRecord Severity="Information" xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord">
  <TraceIdentifier>http://Microsoft.Adapters.Samples.Sql/TraceCode/SQLConnectionOpened</TraceIdentifier>
  <Description>The SQL Connection was opened</Description>
  <AppDomain>TestSQLAdapter.exe</AppDomain>
  <Source>Microsoft.Adapters.Samples.Sql.SQLAdapterConnection/54890288</Source>
  <ExtendedData xmlns="http://microsoft.adapters.samples.sql/SqlConnectionTraceRecord">
    <SqlConnection>
      <ConnectionString>Data Source=localhost;Initial Catalog=adventureworks;Integrated Security=True;Packet Size=8192</ConnectionString>
      <ConnectionTimeout>15</ConnectionTimeout>
      <Database>adventureworks</Database>
      <DataSource>localhost</DataSource>
      <PacketSize>8000</PacketSize>
      <ServerVersion>09.00.3054</ServerVersion>
      <State>Open</State>
      <StatisticsEnabled>False</StatisticsEnabled>
      <WorkstationId>SONUA5</WorkstationId>
    </SqlConnection>
  </ExtendedData>
</TraceRecord>

Remarks

A custom trace record can be provided by the adapter developer for capturing details about an object in XML-compliant format for tracing purposes. This information is written within <DataItem> in the output .svclog file as shown below. It can then be parsed by Service Trace Viewer Tool and shown within the 'Formatted' tab under the "General Properties" section.

Copy Code
<E2ETraceEvent>
    <System/>
    <ApplicationData>
            <TraceData>
                   <DataItem>
<TraceRecord/>
                   </DataItem>
            </TraceData>
    </ApplicationData>
</E2ETraceEvent>

The following classes inherit from the TraceRecord class.

  • MessageTraceRecord

  • OperationMetadataTraceRecord

  • TypeMetadataTraceRecord

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TraceRecord
Microsoft.ServiceModel.Channels.Common.MessageTraceRecord
Microsoft.ServiceModel.Channels.Common.OperationMetadataTraceRecord
Microsoft.ServiceModel.Channels.Common.TypeMetadataTraceRecord

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

TraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace


TraceRecord Members
See Also Methods Constructors
[image]

Used by AdapterTrace to trace the execution sequence of the code and to trace any informational data, error messages, or warnings in-WCF compliant format. This class can be only used as a base class.

The following tables list the members exposed by the TraceRecord type.

Protected Constructors

Name | Description
TraceRecord | Initializes a new instance of the TraceRecord class.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

TraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace


TraceRecord Constructor
[image]

Initializes a new instance of the TraceRecord class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New TraceRecord

Syntax

Visual Basic
Protected Sub New
C#
protected TraceRecord ()
C++
protected:
TraceRecord ()
J#
protected TraceRecord ()
JScript
protected function TraceRecord ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TraceRecord Class
TraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace


TraceRecord Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

TraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace


TraceRecord.WriteTo Method
See Also Example
[image]

Used to trace the execution sequence of the code and to trace any error messages or warnings by using the specified XmlWriter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim writer As XmlWriter

Me.WriteTo(writer)

Syntax

Visual Basic
Protected Friend MustOverride Sub WriteTo ( _
    writer As XmlWriter _
)
C#
protected internal abstract void WriteTo (
    XmlWriter writer
)
C++
protected public:
virtual void WriteTo (
    XmlWriter^ writer
) abstract
J#
protected abstract void WriteTo (
    XmlWriter writer
)
JScript
protected internal abstract function WriteTo (
    writer : XmlWriter
)

Parameters

writer

An XmlWriter to which the trace information relevant to this instance of TraceRecord will be added.

Example

For an example of using this method, see TraceRecord.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TraceRecord Class
TraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace


TraceRecord Properties
[image]

See Also

Reference

TraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace


TraceRecord.EventId Property
[image]

Gets the Uri that is a unique ID of the trace. It could be the return code or type of the exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As Uri

value = Me.EventId

Syntax

Visual Basic
Protected Friend MustOverride ReadOnly Property EventId As Uri
C#
protected internal abstract Uri EventId { get; }
C++
protected public:
virtual property Uri^ EventId {
    Uri^ get () abstract;
}
J#
/** @property */
protected abstract Uri get_EventId ()
JScript
protected internal abstract function get EventId () : Uri

Property Value

The Uri that is a unique ID of the trace.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TraceRecord Class
TraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMember Class
See Also Example Members
[image]

Defines a type member in a StructuredTypeMetadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMember

Syntax

Visual Basic
Public Class TypeMember
    Inherits QualifiedTypeContainer
C#
public class TypeMember : QualifiedTypeContainer
C++
public ref class TypeMember : public QualifiedTypeContainer
J#
public class TypeMember extends QualifiedTypeContainer
JScript
public class TypeMember extends QualifiedTypeContainer

Example

For examples on how to use TypeMember class, see the example sections of the StructuredTypeMetadata and ResolveTypeMetadata.

Remarks

A type member can be created by using a SimpleQualifiedType or ComplexQualifiedType.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.QualifiedTypeContainer
Microsoft.ServiceModel.Channels.Common.TypeMember

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMember Members
Microsoft.ServiceModel.Channels.Common Namespace
QualifiedTypeContainer
StructuredTypeMetadata
IMetadataResolverHandler


TypeMember Members
See Also Constructors Methods Properties
[image]

Defines a type member in a StructuredTypeMetadata.

The following tables list the members exposed by the TypeMember type.

Public Constructors

Name | Description
TypeMember | Overloaded. Initializes a new instance of the TypeMember class.
Top

Public Properties

 | Name | Description
public property | DefaultValue | Gets or sets the default value for this member. (inherited from QualifiedTypeContainer)
public property | Description | Gets or sets the description for the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | IsArray | Gets or sets a Boolean value indicating whether the associated member is an array. (inherited from QualifiedTypeContainer)
public property | IsOptional | Gets or sets a Boolean value indicating whether the type is optional. (inherited from QualifiedTypeContainer)
public property | Name | Gets or sets the name of the current TypeMember object.
public property | OriginalName | Gets or sets the original name of the current TypeMember object.
public property | Properties | Gets the properties dictionary of the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | QualifiedType | Gets or sets the qualified type of the associated member: simple, complex, or custom qualified type. (inherited from QualifiedTypeContainer)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GenerateXmlSchemaAnnotation | Generates annotations for the member that can be used in the XML schema that is associated with this member. (inherited from QualifiedTypeContainer)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

TypeMember Class
Microsoft.ServiceModel.Channels.Common Namespace
QualifiedTypeContainer
StructuredTypeMetadata
IMetadataResolverHandler


TypeMember Constructor
[image]

Initializes a new instance of the TypeMember class.

Overload List

Name | Description
TypeMember (String, QualifiedType, Boolean) | Initializes a new instance of TypeMember class using the specified name, type of the member, and a Boolean flag indicating whether the member is an array.
TypeMember (String, String, QualifiedType, Boolean) | Initializes a new instance of the TypeMember class using the specified name, original name, type of the member, and a Boolean flag that indicates whether the member is an array.

See Also

Reference

TypeMember Class
TypeMember Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMember Constructor (String, QualifiedType, Boolean)
See Also Example
[image]

Initializes a new instance of TypeMember class using the specified name, type of the member, and a Boolean flag indicating whether the member is an array.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim name As String
Dim qualifiedType As QualifiedType
Dim isArray As Boolean

Dim instance As New TypeMember(name, qualifiedType, isArray)

Syntax

Visual Basic
Public Sub New ( _
    name As String, _
    qualifiedType As QualifiedType, _
    isArray As Boolean _
)
C#
public TypeMember (
    string name,
    QualifiedType qualifiedType,
    bool isArray
)
C++
public:
TypeMember (
    String^ name,
    QualifiedType^ qualifiedType,
    bool isArray
)
J#
public TypeMember (
    String name,
    QualifiedType qualifiedType,
    boolean isArray
)
JScript
public function TypeMember (
    name : String,
    qualifiedType : QualifiedType,
    isArray : boolean
)

Parameters

name

Name of the member.

qualifiedType

Qualified type of the member: simple, complex, or custom qualified type.

isArray

true if the member is an array member; otherwise, false.

Example

The following example shows a usage of the TypeMember class.

Example 1: Simple Type

C# Copy Code
TypeMember memName = new TypeMember("firstName", QualifiedType.StringType, false));

Example 2: Simple Type with Restriction

C# Copy Code
SimpleQualifiedType ssnSQT = new SimpleQualifiedType(XmlTypeCode.Token);
XmlSchemaPatternFacet ssnPattern = new XmlSchemaPatternFacet();
ssnPattern.Value ="[0-9]{3}-[0-9]{2}-[0-9]{4}";
ssnSQT.XmlSchemaFacets.Add(ssnPattern);
TypeMember memSSN = new TypeMember("ssn", ssnSQT, false);

Example 3: Complex Type

C# Copy Code
TypeMember memName = new TypeMember("name", new ComplexQualifiedType("Types/CustomerNameType"), false);

Example 4: Array

C# Copy Code
TypeMember memAddress = new TypeMember("address", new ComplexQualifiedType("Types/CustomerAddressType"), true);

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

TypeMember Class
TypeMember Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMember Constructor (String, String, QualifiedType, Boolean)
[image]

Initializes a new instance of the TypeMember class using the specified name, original name, type of the member, and a Boolean flag that indicates whether the member is an array.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim name As String
Dim originalName As String
Dim qualifiedType As QualifiedType
Dim isArray As Boolean

Dim instance As New TypeMember(name, originalName, qualifiedType, isArray)

Syntax

Visual Basic
Public Sub New ( _
    name As String, _
    originalName As String, _
    qualifiedType As QualifiedType, _
    isArray As Boolean _
)
C#
public TypeMember (
    string name,
    string originalName,
    QualifiedType qualifiedType,
    bool isArray
)
C++
public:
TypeMember (
    String^ name,
    String^ originalName,
    QualifiedType^ qualifiedType,
    bool isArray
)
J#
public TypeMember (
    String name,
    String originalName,
    QualifiedType qualifiedType,
    boolean isArray
)
JScript
public function TypeMember (
    name : String,
    originalName : String,
    qualifiedType : QualifiedType,
    isArray : boolean
)

Parameters

name

Name of the member.

originalName

Original name of the member.

qualifiedType

Qualified type of the member: simple, complex, or custom qualified type.

isArray

true if the member is an array; otherwise, false.

Remarks

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMember Class
TypeMember Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMember Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GenerateXmlSchemaAnnotation | Generates annotations for the member that can be used in the XML schema that is associated with this member. (inherited from QualifiedTypeContainer)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

TypeMember Class
Microsoft.ServiceModel.Channels.Common Namespace
QualifiedTypeContainer
StructuredTypeMetadata
IMetadataResolverHandler


TypeMember Properties
[image]

Public Properties

 | Name | Description
public property | DefaultValue | Gets or sets the default value for this member. (inherited from QualifiedTypeContainer)
public property | Description | Gets or sets the description for the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | IsArray | Gets or sets a Boolean value indicating whether the associated member is an array. (inherited from QualifiedTypeContainer)
public property | IsOptional | Gets or sets a Boolean value indicating whether the type is optional. (inherited from QualifiedTypeContainer)
public property | Name | Gets or sets the name of the current TypeMember object.
public property | OriginalName | Gets or sets the original name of the current TypeMember object.
public property | Properties | Gets the properties dictionary of the current QualifiedTypeContainer object. (inherited from QualifiedTypeContainer)
public property | QualifiedType | Gets or sets the qualified type of the associated member: simple, complex, or custom qualified type. (inherited from QualifiedTypeContainer)

See Also

Reference

TypeMember Class
Microsoft.ServiceModel.Channels.Common Namespace
QualifiedTypeContainer
StructuredTypeMetadata
IMetadataResolverHandler


TypeMember.Name Property
[image]

Gets or sets the name of the current TypeMember object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMember
Dim value As String

value = instance.Name

instance.Name = value

Syntax

Visual Basic
Public Property Name As String
C#
public string Name { get; set; }
C++
public:
property String^ Name {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_Name ()

/** @property */
public void set_Name (String value)
JScript
public function get Name () : String

public function set Name (value : String)

Property Value

A string representing the name of the current TypeMember object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMember Class
TypeMember Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMember.OriginalName Property
[image]

Gets or sets the original name of the current TypeMember object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMember
Dim value As String

value = instance.OriginalName

instance.OriginalName = value

Syntax

Visual Basic
Public Property OriginalName As String
C#
public string OriginalName { get; set; }
C++
public:
property String^ OriginalName {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_OriginalName ()

/** @property */
public void set_OriginalName (String value)
JScript
public function get OriginalName () : String

public function set OriginalName (value : String)

Property Value

A string containing the original name of the current TypeMember object.

Remarks

This value will be different from the name only if the original name contains invalid XML element name characters.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMember Class
TypeMember Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata Class
See Also Example Members
[image]

Represents the base class for a type metadata. Use StructuredTypeMetadata to create types with members. This class can be only used as a base class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata

Syntax

Visual Basic
Public MustInherit Class TypeMetadata
    Implements IDisposable
C#
public abstract class TypeMetadata : IDisposable
C++
public ref class TypeMetadata abstract : IDisposable
J#
public abstract class TypeMetadata implements IDisposable
JScript
public abstract class TypeMetadata implements IDisposable

Example

Suppose you are developing an adapter for a target system for which the entity definitions are already defined in an XML schema format. The following is one such XML schema file with a complex type called "Greeting".

Copy Code
<?xml version="1.0" encoding="utf-16"?>
<xsd:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns="sample://My.Samples.CodeSnippets/PreDefinedTypes" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets/PreDefinedTypes" xmlns:xsd ="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="greeting" type="Greeting" />
  <xsd:complexType name="Greeting">
    <xsd:sequence>
      <xsd:element name="address" type="UsAddress" />
      <xsd:element name="text" type="xsd:string" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="UsAddress">
    <xsd:sequence>
      <xsd:element minOccurs="1" maxOccurs="1" name="street1" nillable="true" type="xsd:string" />
      <xsd:element minOccurs="0" maxOccurs="1" name="street2" type="xsd:string" />
      <xsd:element minOccurs="1" maxOccurs="1" name="city" type="xsd:string" />
      <xsd:element name="zip" type="PostalCode" />
    </xsd:sequence>
  </xsd:complexType>
  <xsd:simpleType name="PostalCode">
    <xsd:restriction base="xsd:positiveInteger">
      <xsd:pattern value="\d{5}" />
    </xsd:restriction>
  </xsd:simpleType>
</xsd:schema>

The following is a class named MyCustomTypeMetadata that derives from the TypeMetadata base class.

C# Copy Code
class MyCustomTypeMetadata : TypeMetadata
{
    private string metadataPath;

    /// <summary>
    /// Constructor
    /// </summary>
    /// <param name="typeId">Unique Type Identifier</param>
    /// <param name="typeName">Type Name</param>
    public MyCustomTypeMetadata(string typeId, string typeName, string path)
        : base(typeId, typeName)
    {
        metadataPath = path;
    }

    public override void ExportXmlSchema(XmlSchemaExportContext schemaExportContext, MetadataLookup metadataLookup, TimeSpan timeout)
    {
        if (schemaExportContext == null)
        {
            throw new AdapterException("schemaExportContext is null");
        }
        // Find a way to either read in a schema file or create XmlSchema
        // object yourself
        XmlReader reader = XmlReader.Create(metadataPath);
        XmlSchema schema = XmlSchema.Read(reader, null);
        if (!IsComplexTypeAlreadyDefined(schemaExportContext.SchemaSet, schema))
        {
            schemaExportContext.SchemaSet.Add(schema);
            schemaExportContext.NamespacePrefixSet.Add("mytypes", "sample://My.Samples.CodeSnippets/PreDefinedTypes");
        }
        reader.Close();
    }
}

The following IMetadataResolverHandler implementation uses the MyCustomTypeMetadata class defined above.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;
        // for illustrative purposes show how to resolve one operation here
        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";

        switch (operationId)
        {
            case "/Echo/GetCustomGreetingFromFile":
                // Syntax: Greeting GetCustomGreetingFromFile(Uri path)
                opMetadata.DisplayName = "GetCustomGreetingFromFile";
                // Create Parameters
                greetingQT = new ComplexQualifiedType("GreetingType");
                OperationParameter uri = new OperationParameter("path", OperationParameterDirection.In, QualifiedType.UriType, false);
                opMetadata.Parameters.Add(uri);
                // Create Result
                opMetadata.OperationResult = new OperationResult(greetingQT, false);
                break;

            default:
                throw new AdapterException("Invalid operation " + operationId);
        }
        return opMetadata;
    }

    public TypeMetadata ResolveTypeMetadata(string typeId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = null;
        switch (typeId)
        {
            case "GreetingType":
                // Use a pre-defined schema to generate metadata for this type
                return new MyCustomTypeMetadata(typeId, "Greeting", @"c:/temp/greeting.xsd");

            default:
                throw new AdapterException("Invalid type " + typeId);
        }
    }
}

The following WSDL document is generated by using the sample above.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation>This WSDL is generated from SampleAdapter on 7/7/2007 6:11:00 PM.</wsdl:documentation>
  <wsdl:types>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns3="sample://My.Samples.CodeSnippets/PreDefinedTypes" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
      <xs:import namespace="sample://My.Samples.CodeSnippets/PreDefinedTypes" />
      <xs:element name="GetCustomGreetingFromFile">
        <xs:annotation>
          <xs:documentation>
            <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Echo/GetCustomGreetingFromFile</doc:action>
          </xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="path" nillable="true" type="xs:anyURI" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetCustomGreetingFromFileResponse">
        <xs:annotation>
          <xs:documentation>
            <doc:action xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">/Echo/GetCustomGreetingFromFile/response</doc:action>
          </xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="1" maxOccurs="1" name="GetCustomGreetingFromFileResult" type="ns3:Greeting" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xsd:schema>
    <xsd:schema xmlns:b="http://schemas.microsoft.com/BizTalk/2003" xmlns="sample://My.Samples.CodeSnippets/PreDefinedTypes" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets/PreDefinedTypes">
      <xsd:element name="greeting" type="Greeting" />
      <xsd:complexType name="Greeting">
        <xsd:sequence>
          <xsd:element name="address" type="UsAddress" />
          <xsd:element name="text" type="xsd:string" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:complexType name="UsAddress">
        <xsd:sequence>
          <xsd:element minOccurs="1" maxOccurs="1" name="street1" nillable="true" type="xsd:string" />
          <xsd:element minOccurs="0" maxOccurs="1" name="street2" type="xsd:string" />
          <xsd:element minOccurs="1" maxOccurs="1" name="city" type="xsd:string" />
          <xsd:element name="zip" type="PostalCode" />
        </xsd:sequence>
      </xsd:complexType>
      <xsd:simpleType name="PostalCode">
        <xsd:restriction base="xsd:positiveInteger">
          <xsd:pattern value="\d{5}" />
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_GetCustomGreetingFromFile_InputMessage">
    <wsdl:part name="parameters" element="ns2:GetCustomGreetingFromFile" />
  </wsdl:message>
  <wsdl:message name="SampleContract_GetCustomGreetingFromFile_OutputMessage">
    <wsdl:part name="parameters" element="ns2:GetCustomGreetingFromFileResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="GetCustomGreetingFromFile">
      <wsdl:input wsaw:Action="/Echo/GetCustomGreetingFromFile" message="ns2:SampleContract_GetCustomGreetingFromFile_InputMessage" />
      <wsdl:output wsaw:Action="/Echo/GetCustomGreetingFromFile/response" message="ns2:SampleContract_GetCustomGreetingFromFile_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

You can create a custom type metadata definition by deriving from this abstract class. An XML schema <xsd:simpleType> or <xsd:complexType> is generated by its subclasses.

The StructuredTypeMetadata derives from TypeMetadata and is used for defining a type with members. An XML schema <xsd:complexType> is generated from this type metadata definition by the WCF LOB Adapter SDK. However, consider a scenario where you can already obtain target metadata in XML schema format. In this situation, instead of using StructuredTypeMetadata, a custom class can be inherited from TypeMetadata and XML schema definition can be specified by overriding ExportXmlSchema method.

Another scenario where a custom type metadata class can be useful is in defining an XML schema with constructs that are not supported directly by the WCF LOB Adapter SDK metadata object model, such as <xsd:any>. The WCF LOB Adapter SDK includes the following classes that derive from TypeMetadata:

  • BasicTypeMetadata

  • CharTypeMetadata

  • DurationTypeMetadata

  • GuidTypeMetadata

  • StreamTypeMetadata

  • StructuredTypeMetadata

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Derived Classes

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
StructuredTypeMetadata
IMetadataResolverHandler


TypeMetadata Members
See Also Methods Properties Constructors
[image]

Represents the base class for a type metadata. Use StructuredTypeMetadata to create types with members. This class can be only used as a base class.

The following tables list the members exposed by the TypeMetadata type.

Protected Constructors

Name | Description
TypeMetadata | Overloaded.
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Gets a Boolean value indicating whether a default value can be set for an operation parameter, operation result, and/or a type member.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache.
public property | Description | Gets or sets the description of the type.
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed.
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil.
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed.
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object.
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire.
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object.
public property | Properties | Gets properties dictionary of the current TypeMetadata object.
public property | TypeName | Gets or sets the name of the current TypeMetadata object.
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object.
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded.
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Exports the type's schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

TypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
StructuredTypeMetadata
IMetadataResolverHandler


TypeMetadata Constructor
[image]

Initializes a new instance of the TypeMetadata class.

Overload List

Name | Description
TypeMetadata (String, String) | Initializes a new instance of the TypeMetadata class by using the specified typeId and type name.
TypeMetadata (String, String, DateTime, Boolean) | Initializes a new instance of the TypeMetadata class by using the specified typeId, type name, metadata time stamp, and expiration flag.

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata Constructor (String, String)
[image]

Initializes a new instance of the TypeMetadata class by using the specified typeId and type name.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeId As String
Dim typeName As String

Dim instance As New TypeMetadata(typeId, typeName)

Syntax

Visual Basic
Protected Sub New ( _
    typeId As String, _
    typeName As String _
)
C#
protected TypeMetadata (
    string typeId,
    string typeName
)
C++
protected:
TypeMetadata (
    String^ typeId,
    String^ typeName
)
J#
protected TypeMetadata (
    String typeId,
    String typeName
)
JScript
protected function TypeMetadata (
    typeId : String,
    typeName : String
)

Parameters

typeId

The unique type Id of that type.

typeName

The name of the type.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata Constructor (String, String, DateTime, Boolean)
[image]

Initializes a new instance of the TypeMetadata class by using the specified typeId, type name, metadata time stamp, and expiration flag.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeId As String
Dim typeName As String
Dim metadataTimestamp As DateTime
Dim neverExpires As Boolean

Dim instance As New TypeMetadata(typeId, typeName, metadataTimestamp, neverExpires)

Syntax

Visual Basic
Protected Sub New ( _
    typeId As String, _
    typeName As String, _
    metadataTimestamp As DateTime, _
    neverExpires As Boolean _
)
C#
protected TypeMetadata (
    string typeId,
    string typeName,
    DateTime metadataTimestamp,
    bool neverExpires
)
C++
protected:
TypeMetadata (
    String^ typeId,
    String^ typeName,
    DateTime metadataTimestamp,
    bool neverExpires
)
J#
protected TypeMetadata (
    String typeId,
    String typeName,
    DateTime metadataTimestamp,
    boolean neverExpires
)
JScript
protected function TypeMetadata (
    typeId : String,
    typeName : String,
    metadataTimestamp : DateTime,
    neverExpires : boolean
)

Parameters

typeId

The unique type Id for that instance of the type.

typeName

The name of the type.

metadataTimestamp

The time stamp of the type's metadata.

neverExpires

true if the metadata for the type will never expire; otherwise, false.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded.
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Exports the type's schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded.
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

TypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
StructuredTypeMetadata
IMetadataResolverHandler


TypeMetadata.Dispose Method
[image]

Releases all resources used by the current TypeMetadata object.

Overload List

Name | Description
TypeMetadata.Dispose () | Releases all resources used by the current TypeMetadata object.
TypeMetadata.Dispose (Boolean) | Releases all resources used by the current TypeMetadata object.

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.Dispose Method ()
[image]

Releases all resources used by the current TypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata

instance.Dispose

Syntax

Visual Basic
Public Sub Dispose
C#
public void Dispose ()
C++
public:
virtual void Dispose () sealed
J#
public final void Dispose ()
JScript
public final function Dispose ()

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.Dispose Method (Boolean)
[image]

Releases all resources used by the current TypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim disposing As Boolean

Me.Dispose(disposing)

Syntax

Visual Basic
Protected Overridable Sub Dispose ( _
    disposing As Boolean _
)
C#
protected virtual void Dispose (
    bool disposing
)
C++
protected:
virtual void Dispose (
    bool disposing
)
J#
protected void Dispose (
    boolean disposing
)
JScript
protected function Dispose (
    disposing : boolean
)

Parameters

disposing

true to release both managed and unmanaged resources; false to release only unmanaged resources.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.ExportXmlSchema Method
See Also Example
[image]

Exports the type's schema to the SchemaSet and the namespace prefixes to the NamespacePrefixSet of the XmlSchemaExportContext.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
Public MustOverride Sub ExportXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
public abstract void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
public:
virtual void ExportXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) abstract
J#
public abstract void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
public abstract function ExportXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext

The XmlSchemaExportContext that contains the SchemaSet and the NamespacePrefixSet that the type uses to export its schema and namespaces prefixes.

metadataLookup

The metadata lookup used to look up other metadata definitions.

timeout

The maximum time to wait for the completion of the operation.

Example

See TypeMetadata for an example of this operation.

Remarks

Adapter developers can override this method to provide their own XML schema for a particular type.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.GenerateXmlSchemaAnnotation Method
See Also Example
[image]

Generates the type's XmlSchemaAnnotation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim returnValue As XmlSchemaAnnotation

returnValue = Me.GenerateXmlSchemaAnnotation

Syntax

Visual Basic
Protected Friend Overridable Function GenerateXmlSchemaAnnotation As XmlSchemaAnnotation
C#
protected internal virtual XmlSchemaAnnotation GenerateXmlSchemaAnnotation ()
C++
protected public:
virtual XmlSchemaAnnotation^ GenerateXmlSchemaAnnotation ()
J#
protected XmlSchemaAnnotation GenerateXmlSchemaAnnotation ()
JScript
protected internal function GenerateXmlSchemaAnnotation () : XmlSchemaAnnotation

Return Value

An XmlSchemaAnnotation object.

Example

The following code example provides a usage of this method.

C# Copy Code
    class MyCustomTypeMetadata : TypeMetadata
    {
        protected override XmlSchemaAnnotation GenerateXmlSchemaAnnotation()
        {
            XmlSchemaAnnotation annotation =  base.GenerateXmlSchemaAnnotation();
            // update annotation here with documentation elements
            // . . .
            return annotation;
       }
    }

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Gets a Boolean value indicating whether a default value can be set for an operation parameter, operation result, and/or a type member.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache.
public property | Description | Gets or sets the description of the type.
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed.
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil.
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed.
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object.
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire.
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object.
public property | Properties | Gets properties dictionary of the current TypeMetadata object.
public property | TypeName | Gets or sets the name of the current TypeMetadata object.
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object.
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object.

See Also

Reference

TypeMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace
StructuredTypeMetadata
IMetadataResolverHandler


TypeMetadata.CanSetDefaultValue Property
[image]

Gets a Boolean value indicating whether a default value can be set for an operation parameter, operation result, and/or a type member.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As Boolean

value = instance.CanSetDefaultValue

Syntax

Visual Basic
Public MustOverride ReadOnly Property CanSetDefaultValue As Boolean
C#
public abstract bool CanSetDefaultValue { get; }
C++
public:
virtual property bool CanSetDefaultValue {
    bool get () abstract;
}
J#
/** @property */
public abstract boolean get_CanSetDefaultValue ()
JScript
public abstract function get CanSetDefaultValue () : boolean

Property Value

true if a default value can be set for that type; otherwise, false.

Remarks

The following type metadata classes allow setting a default value:

  • CharTypeMetadata

  • DurationTypeMetadata

  • EnumTypeMetadata

  • GuidTypeMetadata

  • StreamTypeMetadata

A default value cannot be provided for StructuredTypeMetadata.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.CanUseCommonCache Property
[image]

Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As Boolean

value = instance.CanUseCommonCache

instance.CanUseCommonCache = value

Syntax

Visual Basic
Public Property CanUseCommonCache As Boolean
C#
public bool CanUseCommonCache { get; set; }
C++
public:
virtual property bool CanUseCommonCache {
    bool get () sealed;
    void set (bool value);
}
J#
/** @property */
public final boolean get_CanUseCommonCache ()

/** @property */
public void set_CanUseCommonCache (boolean value)
JScript
public final function get CanUseCommonCache () : boolean

public function set CanUseCommonCache (value : boolean)

Property Value

true if this type metadata can be stored in the common cache; otherwise, false.

Remarks

Once the type is resolved in ResolveOperationMetadata and/or ResolveTypeMetadata, the subsequent requests for resolving this type will get the definition from the cache.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.Description Property
See Also Example
[image]

Gets or sets the description of the type.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As String

value = instance.Description

instance.Description = value

Syntax

Visual Basic
Public Property Description As String
C#
public string Description { get; set; }
C++
public:
property String^ Description {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_Description ()

/** @property */
public void set_Description (String value)
JScript
public function get Description () : String

public function set Description (value : String)

Property Value

A string containing the description of the type.

Example

The following code example shows how to use this class. For the complete code listing, see ResolveTypeMetadata.

C# Copy Code
StructuredTypeMetadata custTMD = new StructuredTypeMetadata(typeId, "Customer");
custTMD.Description = "Customer type metadata";

The following is the generated XML schema.

Copy Code
      <xs:complexType name="Customer">
        <xs:annotation>
          <xs:documentation>
            <doc:description xmlns:doc="http://schemas.microsoft.com/servicemodel/adapters/metadata/documentation">Customer type metadata</doc:description>
          </xs:documentation>
        </xs:annotation>
        <xs:sequence> . . .  </xs:sequence>
      </xs:complexType>

Remarks

Setting this emits a <xsd:annotation><xsd:documentation> with the description text for the type in the generated XML Schema.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.IsDisposed Property
[image]

Gets a Boolean value indicating if the type was disposed.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As Boolean

value = instance.IsDisposed

Syntax

Visual Basic
Public ReadOnly Property IsDisposed As Boolean
C#
public bool IsDisposed { get; }
C++
public:
property bool IsDisposed {
    bool get ();
}
J#
/** @property */
public boolean get_IsDisposed ()
JScript
public function get IsDisposed () : boolean

Property Value

true if the type was disposed; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.IsNillable Property
[image]

Gets or sets a Boolean value indicating whether the type's value can be set to nil.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As Boolean

value = instance.IsNillable

instance.IsNillable = value

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly")> _
Public Property IsNillable As Boolean
C#
[SuppressMessageAttribute("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly")]
public bool IsNillable { get; set; }
C++
[SuppressMessageAttribute(L"Microsoft.Naming", L"CA1704:IdentifiersShouldBeSpelledCorrectly")]
public:
property bool IsNillable {
    bool get ();
    void set (bool value);
}
J#
/** @property */
public boolean get_IsNillable ()

/** @property */
public void set_IsNillable (boolean value)
JScript
public function get IsNillable () : boolean

public function set IsNillable (value : boolean)

Property Value

true if the type's value can be set to nil; otherwise, false.

Remarks

Here are the defaults for various built-in type metadata types:

Type | Default
TypeMetadata | Not Set
StructuredTypeMetadata | True
BasicTypeMetadata | False
EnumTypeMetadata | False
CharTypeMetadata | Not Set
DurationTypeMetadata | Not Set
GuidTypeMetadata | Not Set

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.LastTimeAccessed Property
[image]

Gets a DateTime indicating the last time the metadata was accessed.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As DateTime

value = instance.LastTimeAccessed

Syntax

Visual Basic
Public ReadOnly Property LastTimeAccessed As DateTime
C#
public DateTime LastTimeAccessed { get; }
C++
public:
virtual property DateTime LastTimeAccessed {
    DateTime get () sealed;
}
J#
/** @property */
public final DateTime get_LastTimeAccessed ()
JScript
public final function get LastTimeAccessed () : DateTime

Property Value

A DateTime containing the last time the metadata was accessed.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.MetadataTimestamp Property
[image]

Gets or sets the metadata time stamp of the current TypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As DateTime

value = instance.MetadataTimestamp

instance.MetadataTimestamp = value

Syntax

Visual Basic
Public Property MetadataTimestamp As DateTime
C#
public DateTime MetadataTimestamp { get; set; }
C++
public:
virtual property DateTime MetadataTimestamp {
    DateTime get () sealed;
    void set (DateTime value);
}
J#
/** @property */
public final DateTime get_MetadataTimestamp ()

/** @property */
public void set_MetadataTimestamp (DateTime value)
JScript
public final function get MetadataTimestamp () : DateTime

public function set MetadataTimestamp (value : DateTime)

Property Value

A DateTime containing the metadata time stamp of the current TypeMetadata object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.NeverExpires Property
[image]

Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As Boolean

value = instance.NeverExpires

instance.NeverExpires = value

Syntax

Visual Basic
Public Property NeverExpires As Boolean
C#
public bool NeverExpires { get; set; }
C++
public:
virtual property bool NeverExpires {
    bool get () sealed;
    void set (bool value);
}
J#
/** @property */
public final boolean get_NeverExpires ()

/** @property */
public void set_NeverExpires (boolean value)
JScript
public final function get NeverExpires () : boolean

public function set NeverExpires (value : boolean)

Property Value

A value indicating whether the metadata for the current TypeMetadata object will expire.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.OriginalName Property
[image]

Gets or sets the original name of the current TypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As String

value = instance.OriginalName

instance.OriginalName = value

Syntax

Visual Basic
Public Property OriginalName As String
C#
public string OriginalName { get; set; }
C++
public:
property String^ OriginalName {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_OriginalName ()

/** @property */
public void set_OriginalName (String value)
JScript
public function get OriginalName () : String

public function set OriginalName (value : String)

Property Value

A string containing the original name of the current TypeMetadata object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.Properties Property
[image]

Gets properties dictionary of the current TypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As Dictionary(Of String, Object)

value = instance.Properties

Syntax

Visual Basic
Public ReadOnly Property Properties As Dictionary(Of String, Object)
C#
public Dictionary<string,Object> Properties { get; }
C++
public:
property Dictionary<String^, Object^>^ Properties {
    Dictionary<String^, Object^>^ get ();
}
J#
/** @property */
public Dictionary<String,Object> get_Properties ()
JScript
public function get Properties () : Dictionary<String,Object>

Property Value

A properties dictionary of the current TypeMetadata object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.TypeName Property
[image]

Gets or sets the name of the current TypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As String

value = instance.TypeName

instance.TypeName = value

Syntax

Visual Basic
Public Property TypeName As String
C#
public string TypeName { get; set; }
C++
public:
property String^ TypeName {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_TypeName ()

/** @property */
public void set_TypeName (String value)
JScript
public function get TypeName () : String

public function set TypeName (value : String)

Property Value

A string containing the name of the type.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.TypeNamespace Property
[image]

Gets or sets the namespace of the current TypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As String

value = instance.TypeNamespace

instance.TypeNamespace = value

Syntax

Visual Basic
Public Property TypeNamespace As String
C#
public string TypeNamespace { get; set; }
C++
public:
property String^ TypeNamespace {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_TypeNamespace ()

/** @property */
public void set_TypeNamespace (String value)
JScript
public function get TypeNamespace () : String

public function set TypeNamespace (value : String)

Property Value

A string containing the namespace of the type.

Remarks

This value sets the "targetNamespace" attribute in the <schema> element of XML schema file.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadata.UniqueId Property
[image]

Gets the Unique TypeId of the current TypeMetadata object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadata
Dim value As String

value = instance.UniqueId

Syntax

Visual Basic
Public ReadOnly Property UniqueId As String
C#
public string UniqueId { get; }
C++
public:
virtual property String^ UniqueId {
    String^ get () sealed;
}
J#
/** @property */
public final String get_UniqueId ()
JScript
public final function get UniqueId () : String

Property Value

A string containing the Unique TypeId of the type.

Remarks

This identifier is used by GetTypeDefinition to get a type definition from metadata cache. If the type cannot be found in the metadata cache, a call to ResolveTypeMetadata is made with this unique identifier.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
MetadataLookup
IMetadataResolverHandler


TypeMetadataCollection Class
See Also Example Members
[image]

Defines a collection of TypeMetadata objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection

Syntax

Visual Basic
Public Class TypeMetadataCollection
    Implements ICollection(Of TypeMetadata), IEnumerable(Of TypeMetadata), _
    IEnumerable
C#
public class TypeMetadataCollection : ICollection<TypeMetadata>, IEnumerable<TypeMetadata>,
    IEnumerable
C++
public ref class TypeMetadataCollection : ICollection<TypeMetadata^>, IEnumerable<TypeMetadata^>,
    IEnumerable
J#
public class TypeMetadataCollection implements ICollection<TypeMetadata>,
    IEnumerable<TypeMetadata>, IEnumerable
JScript
public class TypeMetadataCollection implements ICollection<TypeMetadata>,
    IEnumerable<TypeMetadata>, IEnumerable

Example

The following example uses this class within the ResolveOperationMetadata method.

C# Copy Code
public class SampleAdapterMetadataResolverHandler : IMetadataResolverHandler
{
    public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
    {
        extraTypeMetadataResolved = new TypeMetadataCollection();

        // for illustrative purposes show how to resolve one operation here

        ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
        // Setting opMetadata.DisplayName is mandatory, otherwise metadata won't be generated
        opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
        opMetadata.OperationGroup = "SampleContract";
        switch (operationId)
        {
            case "/Echo/EchoComplexObject":
                // Syntax: SampleComplexObject[] EchoComplexObject(SampleComplexObject complexObject)
                opMetadata.DisplayName = "EchoComplexObject";
                // Create Parameters
                ComplexQualifiedType myEchoObjectQT = new ComplexQualifiedType("SampleComplexObjectType");
                OperationParameter complexObject = new OperationParameter("complexObject", OperationParameterDirection.In, myEchoObjectQT, false);
                opMetadata.Parameters.Add(complexObject);
                // Create Result
                opMetadata.OperationResult = new OperationResult(myEchoObjectQT, true);
                // Resolve type metadata in this method instead of ResolveTypeMetadata
                StructuredTypeMetadata complexObjectTM = new StructuredTypeMetadata("SampleComplexObjectType", "MyComplexObject");
                TypeMember parmText = new TypeMember("text", QualifiedType.StringType, false);
                TypeMember parmTimestamp = new TypeMember("timestamp", QualifiedType.DateTimeType, false);
                complexObjectTM.Members.Add(parmText);
                complexObjectTM.Members.Add(parmTimestamp);
                complexObjectTM.CanUseCommonCache = true;
                // Add resolved type to the TypeMetadataCollection
                extraTypeMetadataResolved.Add(complexObjectTM);
                break;

            default:
                throw new UnsupportedOperationException("Invalid operation " + operationId);
        }
        return opMetadata;
    }
}

Remarks

It is typically used within ResolveOperationMetadata and ResolveTypeMetadata to add extra types resolved within the context of one operation or type.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadataCollection

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
IMetadataResolverHandler


TypeMetadataCollection Members
See Also Constructors Methods Properties Explicit Interface Implementations
[image]

Defines a collection of TypeMetadata objects.

The following tables list the members exposed by the TypeMetadataCollection type.

Public Constructors

Name | Description
TypeMetadataCollection | Initializes an instance of the TypeMetadataCollection class.
Top

Public Properties

 | Name | Description
public property | Count | Gets the number of elements actually contained in the current TypeMetadataCollection object.
public property | IsReadOnly | Gets a Boolean value indicating whether the collection is read-only.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Add | A TypeMetadata that needs to be added to the collection.
public method | Clear | Removes all elements from the collection.
public method | Contains | Determines whether a TypeMetadata is in the collection.
public method | CopyTo | Copies the collection or a portion of it to an array.
public method | Equals | (inherited from Object)
public method | GetEnumerator | Gets an enumerator that iterates through the collection.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | Remove | Removes the first occurrence of a specific type metadata object from the collection.
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

Explicit Interface Implementations

Name | Description
GetEnumerator | Returns an enumerator that iterates through the collection
Top

See Also

Reference

TypeMetadataCollection Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
IMetadataResolverHandler


TypeMetadataCollection Constructor
[image]

Initializes an instance of the TypeMetadataCollection class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New TypeMetadataCollection

Syntax

Visual Basic
Public Sub New
C#
public TypeMetadataCollection ()
C++
public:
TypeMetadataCollection ()
J#
public TypeMetadataCollection ()
JScript
public function TypeMetadataCollection ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataCollection Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Add | A TypeMetadata that needs to be added to the collection.
public method | Clear | Removes all elements from the collection.
public method | Contains | Determines whether a TypeMetadata is in the collection.
public method | CopyTo | Copies the collection or a portion of it to an array.
public method | Equals | (inherited from Object)
public method | GetEnumerator | Gets an enumerator that iterates through the collection.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | Remove | Removes the first occurrence of a specific type metadata object from the collection.
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

Explicit Interface Implementations

Name | Description
GetEnumerator | Returns an enumerator that iterates through the collection

See Also

Reference

TypeMetadataCollection Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
IMetadataResolverHandler


TypeMetadataCollection.Add Method
See Also Example
[image]

A TypeMetadata that needs to be added to the collection.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection
Dim item As TypeMetadata

instance.Add(item)

Syntax

Visual Basic
Public Sub Add ( _
    item As TypeMetadata _
)
C#
public void Add (
    TypeMetadata item
)
C++
public:
virtual void Add (
    TypeMetadata^ item
) sealed
J#
public final void Add (
    TypeMetadata item
)
JScript
public final function Add (
    item : TypeMetadata
)

Parameters

item

A TypeMetadata that needs to be added to the collection.

Example

For an example of using this method, see TypeMetadataCollection.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataCollection.Clear Method
[image]

Removes all elements from the collection.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection

instance.Clear

Syntax

Visual Basic
Public Sub Clear
C#
public void Clear ()
C++
public:
virtual void Clear () sealed
J#
public final void Clear ()
JScript
public final function Clear ()

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataCollection.Contains Method
[image]

Determines whether a TypeMetadata is in the collection.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection
Dim item As TypeMetadata
Dim returnValue As Boolean

returnValue = instance.Contains(item)

Syntax

Visual Basic
Public Function Contains ( _
    item As TypeMetadata _
) As Boolean
C#
public bool Contains (
    TypeMetadata item
)
C++
public:
virtual bool Contains (
    TypeMetadata^ item
) sealed
J#
public final boolean Contains (
    TypeMetadata item
)
JScript
public final function Contains (
    item : TypeMetadata
) : boolean

Parameters

item

A TypeMetadata that needs to be checked for its presence in the collection.

Return Value

true if the type metadata instance is in the collection; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataCollection.CopyTo Method
[image]

Copies the collection or a portion of it to an array.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection
Dim array As TypeMetadata()
Dim arrayIndex As Integer

instance.CopyTo(array, arrayIndex)

Syntax

Visual Basic
Public Sub CopyTo ( _
    array As TypeMetadata(), _
    arrayIndex As Integer _
)
C#
public void CopyTo (
    TypeMetadata[] array,
    int arrayIndex
)
C++
public:
virtual void CopyTo (
    array<TypeMetadata^>^ array,
    int arrayIndex
) sealed
J#
public final void CopyTo (
    TypeMetadata[] array,
    int arrayIndex
)
JScript
public final function CopyTo (
    array : TypeMetadata[],
    arrayIndex : int
)

Parameters

array

The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.

arrayIndex

The zero-based index in an array at which copying begins.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataCollection.GetEnumerator Method
[image]

Gets an enumerator that iterates through the collection.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection
Dim returnValue As IEnumerator(Of TypeMetadata)

returnValue = instance.GetEnumerator

Syntax

Visual Basic
Public Function GetEnumerator As IEnumerator(Of TypeMetadata)
C#
public IEnumerator<TypeMetadata> GetEnumerator ()
C++
public:
virtual IEnumerator<TypeMetadata^>^ GetEnumerator () sealed
J#
public final IEnumerator<TypeMetadata> GetEnumerator ()
JScript
public final function GetEnumerator () : IEnumerator<TypeMetadata>

Return Value

An enumerator that iterates through the collection.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataCollection.Remove Method
[image]

Removes the first occurrence of a specific type metadata object from the collection.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection
Dim item As TypeMetadata
Dim returnValue As Boolean

returnValue = instance.Remove(item)

Syntax

Visual Basic
Public Function Remove ( _
    item As TypeMetadata _
) As Boolean
C#
public bool Remove (
    TypeMetadata item
)
C++
public:
virtual bool Remove (
    TypeMetadata^ item
) sealed
J#
public final boolean Remove (
    TypeMetadata item
)
JScript
public final function Remove (
    item : TypeMetadata
) : boolean

Parameters

item

The TypeMetadata to be removed.

Return Value

true if the TypeMetadata is successfully removed; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataCollection.GetEnumerator Method
[image]

Returns an enumerator that iterates through the collection

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection
Dim returnValue As IEnumerator

returnValue = CType(instance, IEnumerable).GetEnumerator

Syntax

Visual Basic
Private Function System.Collections.IEnumerable.GetEnumerator As IEnumerator Implements IEnumerable.GetEnumerator
C#
IEnumerator IEnumerable.GetEnumerator ()
C++
private:
virtual IEnumerator^ System.Collections.IEnumerable.GetEnumerator () sealed = IEnumerable::GetEnumerator
J#
JScript

Return Value

Returns IEnumerator.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataCollection Properties
[image]

Public Properties

 | Name | Description
public property | Count | Gets the number of elements actually contained in the current TypeMetadataCollection object.
public property | IsReadOnly | Gets a Boolean value indicating whether the collection is read-only.

See Also

Reference

TypeMetadataCollection Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata
IMetadataResolverHandler


TypeMetadataCollection.Count Property
[image]

Gets the number of elements actually contained in the current TypeMetadataCollection object.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection
Dim value As Integer

value = instance.Count

Syntax

Visual Basic
Public ReadOnly Property Count As Integer
C#
public int Count { get; }
C++
public:
virtual property int Count {
    int get () sealed;
}
J#
/** @property */
public final int get_Count ()
JScript
public final function get Count () : int

Property Value

The number of elements actually contained in the current TypeMetadataCollection object.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataCollection.IsReadOnly Property
[image]

Gets a Boolean value indicating whether the collection is read-only.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataCollection
Dim value As Boolean

value = instance.IsReadOnly

Syntax

Visual Basic
Public ReadOnly Property IsReadOnly As Boolean
C#
public bool IsReadOnly { get; }
C++
public:
virtual property bool IsReadOnly {
    bool get () sealed;
}
J#
/** @property */
public final boolean get_IsReadOnly ()
JScript
public final function get IsReadOnly () : boolean

Property Value

true if the collection is read-only; otherwise, false.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataCollection Class
TypeMetadataCollection Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataTraceRecord Class
See Also Example Members
[image]

Used to trace the execution sequence of the code and also to trace any error messages or warnings pertaining to TypeMetadata in a Windows Communication Foundation compliant format.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As TypeMetadataTraceRecord

Syntax

Visual Basic
Public NotInheritable Class TypeMetadataTraceRecord
    Inherits TraceRecord
C#
public sealed class TypeMetadataTraceRecord : TraceRecord
C++
public ref class TypeMetadataTraceRecord sealed : public TraceRecord
J#
public final class TypeMetadataTraceRecord extends TraceRecord
JScript
public final class TypeMetadataTraceRecord extends TraceRecord

Example

The following example provides a usage of this TypeMetadataTraceRecord class to trace information pertaining to the StructuredTypeMetadata.

C# Copy Code
StructuredTypeMetadata typeMetadata = new StructuredTypeMetadata(typeId, "Type");
SQLAdapterUtilities.Trace.Trace(
    System.Diagnostics.TraceEventType.Information,
    "http://Microsoft.Adapters.Samples.Sql/TraceCode/MetadataResolverError",
    "Cannot resolve metadata",
    this,
    new TypeMetadataTraceRecord(typeMetadata));

Remarks

The TypeMetadataTraceRecord class inherits from the TraceRecord class. See the example section of the TraceRecord class for how to use a custom trace record to trace extra information.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TraceRecord
Microsoft.ServiceModel.Channels.Common.TypeMetadataTraceRecord

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

TypeMetadataTraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata


TypeMetadataTraceRecord Members
See Also Constructors Methods
[image]

Used to trace the execution sequence of the code and also to trace any error messages or warnings pertaining to TypeMetadata in a Windows Communication Foundation compliant format.

The following tables list the members exposed by the TypeMetadataTraceRecord type.

Public Constructors

Name | Description
TypeMetadataTraceRecord | Initializes a new instance of the TypeMetadataTraceRecord class using the specified TypeMetadata.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

TypeMetadataTraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata


TypeMetadataTraceRecord Constructor
[image]

Initializes a new instance of the TypeMetadataTraceRecord class using the specified TypeMetadata.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim typeMetadata As TypeMetadata

Dim instance As New TypeMetadataTraceRecord(typeMetadata)

Syntax

Visual Basic
Public Sub New ( _
    typeMetadata As TypeMetadata _
)
C#
public TypeMetadataTraceRecord (
    TypeMetadata typeMetadata
)
C++
public:
TypeMetadataTraceRecord (
    TypeMetadata^ typeMetadata
)
J#
public TypeMetadataTraceRecord (
    TypeMetadata typeMetadata
)
JScript
public function TypeMetadataTraceRecord (
    typeMetadata : TypeMetadata
)

Parameters

typeMetadata

A TypeMetadata which requires the trace information.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

TypeMetadataTraceRecord Class
TypeMetadataTraceRecord Members
Microsoft.ServiceModel.Channels.Common Namespace


TypeMetadataTraceRecord Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

TypeMetadataTraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata


TypeMetadataTraceRecord Properties
[image]

See Also

Reference

TypeMetadataTraceRecord Class
Microsoft.ServiceModel.Channels.Common Namespace
TypeMetadata


UnsupportedOperationException Class
See Also Example Members
[image]

Represents an exception that is thrown when the adapter receives a message with an Action that can't be mapped to any of the adapter's supported operations.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As UnsupportedOperationException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class UnsupportedOperationException
    Inherits ActionNotSupportedException
C#
[SerializableAttribute]
public class UnsupportedOperationException : ActionNotSupportedException
C++
[SerializableAttribute]
public ref class UnsupportedOperationException : public ActionNotSupportedException
J#
/** @attribute SerializableAttribute() */
public class UnsupportedOperationException extends ActionNotSupportedException
JScript
SerializableAttribute
public class UnsupportedOperationException extends ActionNotSupportedException

Example

The following example uses this exception within the IOutboundHandler implementation.

C# Copy Code
public class SampleAdapterOutboundHandler : IOutboundHandler
{
    /// <summary>
    /// Executes the request message on the target system and returns a response message.
    /// If there isn’t a response, this method should return null
    /// </summary>
    public Message Execute(Message message, TimeSpan timeout)
    {
        // Get the OperationMetadata definition for this incoming operation
        OperationMetadata om = this.MetadataLookup.GetOperationDefinition(message.Headers.Action, timeout);
        if (om == null)
        {
            // This means there is no metadata information defined in the
            // adapter. Some processing can be done here if the adapter doesn't really care
            // about the incoming message and just wants to work with the
            // SOAP message as a whole without having to look into the payload.
            SampleAdapterUtilities.Trace.Trace(TraceEventType.Error, "SampleAdapterOutboundHandler::execute", "Unknown operation " + message.Headers.Action);
            throw new UnsupportedOperationException("This adapter doesn't understand the operation " + message.Headers.Action);
        }

        // The adapter understands the metadata for the incoming
        // XML message. The processing of this method may require
        // referring to this metadata - e.g. figuring out what
        // back-end function to call and mapping individual XML
        // elements to the target system format.

        ...

        // Generate response
        StringBuilder outputString = new StringBuilder();
        XmlReader replyReader = XmlReader.Create(new StringReader(outputString.ToString()));
        // Use the operation metadata to retrieve the expected output message action
        Message replymessage = Message.CreateMessage(MessageVersion.Default, om.OutputMessageAction, replyReader);
        return replymessage.
    }
}

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
System.ServiceModel.ActionNotSupportedException
Microsoft.ServiceModel.Channels.Common.UnsupportedOperationException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

UnsupportedOperationException Members
Microsoft.ServiceModel.Channels.Common Namespace


UnsupportedOperationException Members
See Also Constructors Methods Properties
[image]

Represents an exception that is thrown when the adapter receives a message with an Action that can't be mapped to any of the adapter's supported operations.

The following tables list the members exposed by the UnsupportedOperationException type.

Public Constructors (see also Protected Constructors)

Name | Description
UnsupportedOperationException | Overloaded. Initializes a new instance of the UnsupportedOperationException class.
Top

Protected Constructors

Name | Description
UnsupportedOperationException | Overloaded. Initializes a new instance of the UnsupportedOperationException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

UnsupportedOperationException Class
Microsoft.ServiceModel.Channels.Common Namespace


UnsupportedOperationException Constructor
[image]

Initializes a new instance of the UnsupportedOperationException class.

Overload List

Name | Description
UnsupportedOperationException () | Initializes a new instance of the UnsupportedOperationException class.
UnsupportedOperationException (SerializationInfo, StreamingContext) | Initializes a new instance of the UnsupportedOperationException class with the specified serialization information and context objects.
UnsupportedOperationException (String) | Initializes a new instance of the UnsupportedOperationException class by using the specified error message.
UnsupportedOperationException (String, Exception) | Initializes a new instance of the UnsupportedOperationException class with the specified error message and inner Exception.

See Also

Reference

UnsupportedOperationException Class
UnsupportedOperationException Members
Microsoft.ServiceModel.Channels.Common Namespace


UnsupportedOperationException Constructor ()
[image]

Initializes a new instance of the UnsupportedOperationException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New UnsupportedOperationException

Syntax

Visual Basic
Public Sub New
C#
public UnsupportedOperationException ()
C++
public:
UnsupportedOperationException ()
J#
public UnsupportedOperationException ()
JScript
public function UnsupportedOperationException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

UnsupportedOperationException Class
UnsupportedOperationException Members
Microsoft.ServiceModel.Channels.Common Namespace


UnsupportedOperationException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the UnsupportedOperationException class with the specified serialization information and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New UnsupportedOperationException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected UnsupportedOperationException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
UnsupportedOperationException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected UnsupportedOperationException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function UnsupportedOperationException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

UnsupportedOperationException Class
UnsupportedOperationException Members
Microsoft.ServiceModel.Channels.Common Namespace


UnsupportedOperationException Constructor (String)
[image]

Initializes a new instance of the UnsupportedOperationException class by using the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New UnsupportedOperationException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public UnsupportedOperationException (
    string message
)
C++
public:
UnsupportedOperationException (
    String^ message
)
J#
public UnsupportedOperationException (
    String message
)
JScript
public function UnsupportedOperationException (
    message : String
)

Parameters

message

The message that describes the error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

UnsupportedOperationException Class
UnsupportedOperationException Members
Microsoft.ServiceModel.Channels.Common Namespace


UnsupportedOperationException Constructor (String, Exception)
[image]

Initializes a new instance of the UnsupportedOperationException class with the specified error message and inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New UnsupportedOperationException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public UnsupportedOperationException (
    string message,
    Exception inner
)
C++
public:
UnsupportedOperationException (
    String^ message,
    Exception^ inner
)
J#
public UnsupportedOperationException (
    String message,
    Exception inner
)
JScript
public function UnsupportedOperationException (
    message : String,
    inner : Exception
)

Parameters

message

The error message that explains the reason for this exception.

inner

The exception that is the cause of the current exception. If the inner parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

UnsupportedOperationException Class
UnsupportedOperationException Members
Microsoft.ServiceModel.Channels.Common Namespace


UnsupportedOperationException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

UnsupportedOperationException Class
Microsoft.ServiceModel.Channels.Common Namespace


UnsupportedOperationException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

UnsupportedOperationException Class
Microsoft.ServiceModel.Channels.Common Namespace


WeakDataSetMetadata Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As WeakDataSetMetadata

Syntax

Visual Basic
Public Class WeakDataSetMetadata
    Inherits TypeMetadata
C#
public class WeakDataSetMetadata : TypeMetadata
C++
public ref class WeakDataSetMetadata : public TypeMetadata
J#
public class WeakDataSetMetadata extends TypeMetadata
JScript
public class WeakDataSetMetadata extends TypeMetadata

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.TypeMetadata
Microsoft.ServiceModel.Channels.Common.WeakDataSetMetadata

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

WeakDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


WeakDataSetMetadata Members
See Also Constructors Fields Methods Properties
[image]

The following tables list the members exposed by the WeakDataSetMetadata type.

Public Constructors

Name | Description
WeakDataSetMetadata |
Top

Public Fields

Name | Description
TypeId |
Top

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

WeakDataSetMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace


WeakDataSetMetadata Fields
[image]

Public Fields

Name | Description
TypeId |

See Also

Reference

WeakDataSetMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace


WeakDataSetMetadata.TypeId Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim value As String

value = WeakDataSetMetadata.TypeId

Syntax

Visual Basic
Public Const TypeId As String
C#
public const string TypeId
C++
public:
literal String^ TypeId
J#
public static final String TypeId
JScript
public const var TypeId : String

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

WeakDataSetMetadata Class
WeakDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


WeakDataSetMetadata Constructor
[image]

Initializes a new instance of the WeakDataSetMetadata Class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New WeakDataSetMetadata

Syntax

Visual Basic
Public Sub New
C#
public WeakDataSetMetadata ()
C++
public:
WeakDataSetMetadata ()
J#
public WeakDataSetMetadata ()
JScript
public function WeakDataSetMetadata ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

WeakDataSetMetadata Class
WeakDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


WeakDataSetMetadata Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Dispose | Overloaded. (inherited from TypeMetadata)
public method | Equals | (inherited from Object)
public method | ExportXmlSchema | Overridden.
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Dispose | Overloaded. (inherited from TypeMetadata)
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

WeakDataSetMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace


WeakDataSetMetadata.ExportXmlSchema Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As WeakDataSetMetadata
Dim schemaExportContext As XmlSchemaExportContext
Dim metadataLookup As MetadataLookup
Dim timeout As TimeSpan

instance.ExportXmlSchema(schemaExportContext, metadataLookup, timeout)

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")> _
Public Overrides Sub ExportXmlSchema ( _
    schemaExportContext As XmlSchemaExportContext, _
    metadataLookup As MetadataLookup, _
    timeout As TimeSpan _
)
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")]
public override void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1062:ValidateArgumentsOfPublicMethods")]
public:
virtual void ExportXmlSchema (
    XmlSchemaExportContext^ schemaExportContext,
    MetadataLookup^ metadataLookup,
    TimeSpan timeout
) override
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods") */
public void ExportXmlSchema (
    XmlSchemaExportContext schemaExportContext,
    MetadataLookup metadataLookup,
    TimeSpan timeout
)
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1062:ValidateArgumentsOfPublicMethods")
public override function ExportXmlSchema (
    schemaExportContext : XmlSchemaExportContext,
    metadataLookup : MetadataLookup,
    timeout : TimeSpan
)

Parameters

schemaExportContext
metadataLookup
timespan

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

WeakDataSetMetadata Class
WeakDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


WeakDataSetMetadata Properties
[image]

Public Properties

 | Name | Description
public property | CanSetDefaultValue | Overridden.
public property | CanUseCommonCache | Gets or sets a Boolean value indicating whether this type metadata can be stored in the common metadata cache. (inherited from TypeMetadata)
public property | Description | Gets or sets the description of the type. (inherited from TypeMetadata)
public property | IsDisposed | Gets a Boolean value indicating if the type was disposed. (inherited from TypeMetadata)
public property | IsNillable | Gets or sets a Boolean value indicating whether the type's value can be set to nil. (inherited from TypeMetadata)
public property | LastTimeAccessed | Gets a DateTime indicating the last time the metadata was accessed. (inherited from TypeMetadata)
public property | MetadataTimestamp | Gets or sets the metadata time stamp of the current TypeMetadata object. (inherited from TypeMetadata)
public property | NeverExpires | Gets or sets a Boolean value indicating whether the metadata for the current TypeMetadata object will expire. (inherited from TypeMetadata)
public property | OriginalName | Gets or sets the original name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | Properties | Gets properties dictionary of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeName | Gets or sets the name of the current TypeMetadata object. (inherited from TypeMetadata)
public property | TypeNamespace | Gets or sets the namespace of the current TypeMetadata object. (inherited from TypeMetadata)
public property | UniqueId | Gets the Unique TypeId of the current TypeMetadata object. (inherited from TypeMetadata)

See Also

Reference

WeakDataSetMetadata Class
Microsoft.ServiceModel.Channels.Common Namespace


WeakDataSetMetadata.CanSetDefaultValue Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As WeakDataSetMetadata
Dim value As Boolean

value = instance.CanSetDefaultValue

Syntax

Visual Basic
Public Overrides ReadOnly Property CanSetDefaultValue As Boolean
C#
public override bool CanSetDefaultValue { get; }
C++
public:
virtual property bool CanSetDefaultValue {
    bool get () override;
}
J#
/** @property */
public boolean get_CanSetDefaultValue ()
JScript
public override function get CanSetDefaultValue () : boolean

Property Value

Returns Boolean.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

WeakDataSetMetadata Class
WeakDataSetMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderGenerationException Class
See Also Members
[image]

Represents an exception that is thrown when there is an error generating data for an XmlReader.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As XmlReaderGenerationException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class XmlReaderGenerationException
    Inherits AdapterException
C#
[SerializableAttribute]
public class XmlReaderGenerationException : AdapterException
C++
[SerializableAttribute]
public ref class XmlReaderGenerationException : public AdapterException
J#
/** @attribute SerializableAttribute() */
public class XmlReaderGenerationException extends AdapterException
JScript
SerializableAttribute
public class XmlReaderGenerationException extends AdapterException

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
Microsoft.ServiceModel.Channels.Common.AdapterException
Microsoft.ServiceModel.Channels.Common.XmlReaderGenerationException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderGenerationException Members
See Also Constructors Methods Properties
[image]

Represents an exception that is thrown when there is an error generating data for an XmlReader.

The following tables list the members exposed by the XmlReaderGenerationException type.

Public Constructors (see also Protected Constructors)

Name | Description
XmlReaderGenerationException | Overloaded. Initializes a new instance of the XmlReaderGenerationException class.
Top

Protected Constructors

Name | Description
XmlReaderGenerationException | Overloaded. Initializes a new instance of the XmlReaderGenerationException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

XmlReaderGenerationException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderGenerationException Constructor
[image]

Initializes a new instance of the XmlReaderGenerationException class.

Overload List

Name | Description
XmlReaderGenerationException () | Initializes a new instance of the XmlReaderGenerationException class.
XmlReaderGenerationException (SerializationInfo, StreamingContext) | Initializes a new instance of the XmlReaderGenerationException class with the specified serialization and context objects.
XmlReaderGenerationException (String) | Initializes a new instance of the XmlReaderGenerationException class with the specified error message.
XmlReaderGenerationException (String, Exception) | Initializes a new instance of the XmlReaderGenerationException class with the specified message and inner Exception.

See Also

Reference

XmlReaderGenerationException Class
XmlReaderGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderGenerationException Constructor ()
[image]

Initializes a new instance of the XmlReaderGenerationException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New XmlReaderGenerationException

Syntax

Visual Basic
Public Sub New
C#
public XmlReaderGenerationException ()
C++
public:
XmlReaderGenerationException ()
J#
public XmlReaderGenerationException ()
JScript
public function XmlReaderGenerationException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderGenerationException Class
XmlReaderGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderGenerationException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the XmlReaderGenerationException class with the specified serialization and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New XmlReaderGenerationException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected XmlReaderGenerationException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
XmlReaderGenerationException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected XmlReaderGenerationException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function XmlReaderGenerationException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The content of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderGenerationException Class
XmlReaderGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderGenerationException Constructor (String)
[image]

Initializes a new instance of the XmlReaderGenerationException class with the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New XmlReaderGenerationException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public XmlReaderGenerationException (
    string message
)
C++
public:
XmlReaderGenerationException (
    String^ message
)
J#
public XmlReaderGenerationException (
    String message
)
JScript
public function XmlReaderGenerationException (
    message : String
)

Parameters

message

The message that describes the error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderGenerationException Class
XmlReaderGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderGenerationException Constructor (String, Exception)
[image]

Initializes a new instance of the XmlReaderGenerationException class with the specified message and inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New XmlReaderGenerationException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public XmlReaderGenerationException (
    string message,
    Exception inner
)
C++
public:
XmlReaderGenerationException (
    String^ message,
    Exception^ inner
)
J#
public XmlReaderGenerationException (
    String message,
    Exception inner
)
JScript
public function XmlReaderGenerationException (
    message : String,
    inner : Exception
)

Parameters

message

The message that explains the reason for this exception.

inner

The exception that is the cause of the current exception. If the inner parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderGenerationException Class
XmlReaderGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderGenerationException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

XmlReaderGenerationException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderGenerationException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

XmlReaderGenerationException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderParsingException Class
See Also Members
[image]

Represents an exception that is thrown when there is an error parsing data for an XmlReader.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As XmlReaderParsingException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class XmlReaderParsingException
    Inherits AdapterException
C#
[SerializableAttribute]
public class XmlReaderParsingException : AdapterException
C++
[SerializableAttribute]
public ref class XmlReaderParsingException : public AdapterException
J#
/** @attribute SerializableAttribute() */
public class XmlReaderParsingException extends AdapterException
JScript
SerializableAttribute
public class XmlReaderParsingException extends AdapterException

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
Microsoft.ServiceModel.Channels.Common.AdapterException
Microsoft.ServiceModel.Channels.Common.XmlReaderParsingException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderParsingException Members
See Also Constructors Methods Properties
[image]

Represents an exception that is thrown when there is an error parsing data for an XmlReader.

The following tables list the members exposed by the XmlReaderParsingException type.

Public Constructors (see also Protected Constructors)

Name | Description
XmlReaderParsingException | Overloaded. Initializes a new instance of the XmlReaderParsingException class.
Top

Protected Constructors

Name | Description
XmlReaderParsingException | Overloaded. Initializes a new instance of the XmlReaderParsingException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

XmlReaderParsingException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderParsingException Constructor
[image]

Initializes a new instance of the XmlReaderParsingException class.

Overload List

Name | Description
XmlReaderParsingException () | Initializes a new instance of the XmlReaderParsingException class.
XmlReaderParsingException (SerializationInfo, StreamingContext) | Initializes a new instance of the XmlReaderParsingException class with the specified serialization and context objects.
XmlReaderParsingException (String) | Initializes a new instance of the XmlReaderParsingException class with the specified error message.
XmlReaderParsingException (String, Exception) | Initializes a new instance of the XmlReaderParsingException class with the specified error message and inner Exception.

See Also

Reference

XmlReaderParsingException Class
XmlReaderParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderParsingException Constructor ()
[image]

Initializes a new instance of the XmlReaderParsingException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New XmlReaderParsingException

Syntax

Visual Basic
Public Sub New
C#
public XmlReaderParsingException ()
C++
public:
XmlReaderParsingException ()
J#
public XmlReaderParsingException ()
JScript
public function XmlReaderParsingException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderParsingException Class
XmlReaderParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderParsingException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the XmlReaderParsingException class with the specified serialization and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New XmlReaderParsingException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected XmlReaderParsingException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
XmlReaderParsingException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected XmlReaderParsingException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function XmlReaderParsingException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderParsingException Class
XmlReaderParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderParsingException Constructor (String)
[image]

Initializes a new instance of the XmlReaderParsingException class with the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New XmlReaderParsingException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public XmlReaderParsingException (
    string message
)
C++
public:
XmlReaderParsingException (
    String^ message
)
J#
public XmlReaderParsingException (
    String message
)
JScript
public function XmlReaderParsingException (
    message : String
)

Parameters

message

The message that describes the error.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderParsingException Class
XmlReaderParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderParsingException Constructor (String, Exception)
[image]

Initializes a new instance of the XmlReaderParsingException class with the specified error message and inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New XmlReaderParsingException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public XmlReaderParsingException (
    string message,
    Exception inner
)
C++
public:
XmlReaderParsingException (
    String^ message,
    Exception^ inner
)
J#
public XmlReaderParsingException (
    String message,
    Exception inner
)
JScript
public function XmlReaderParsingException (
    message : String,
    inner : Exception
)

Parameters

message

The message that explains the reason for this exception.

inner

The exception that is the cause of the current exception. If the inner parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlReaderParsingException Class
XmlReaderParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderParsingException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

XmlReaderParsingException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlReaderParsingException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

XmlReaderParsingException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlSchemaExportContext Class
See Also Example Members
[image]

Defines the context while building schemas for generating WSDL. It includes the set of schemas that will be added as part of the generated WSDL and all the namespaces of the operation, complex types along with their prefixes, and the default metadata namespace for the WSDL generation.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As XmlSchemaExportContext

Syntax

Visual Basic
Public Class XmlSchemaExportContext
C#
public class XmlSchemaExportContext
C++
public ref class XmlSchemaExportContext
J#
public class XmlSchemaExportContext
JScript
public class XmlSchemaExportContext

Example

The following code example uses XmlSchemaExportContext in a custom implementation of the TypeMetadata class.

C# Copy Code
class MyCustomTypeMetadata : TypeMetadata
{
    public override void ExportXmlSchema(XmlSchemaExportContext schemaExportContext, MetadataLookup metadataLookup, TimeSpan timeout)
    {
        if (schemaExportContext == null)
        {
            throw new AdapterException("schemaExportContext is null");
        }
        // Find a way to either read in a schema file or create XmlSchema
        // object yourself
        // for this example, use the type name to load a schema
        XmlReader reader = XmlReader.Create(@"c:\temp\greeting.xsd");
        XmlSchema schema = XmlSchema.Read(reader, null);
        if (!IsComplexTypeAlreadyDefined(schemaExportContext.SchemaSet, schema))
        {
            schemaExportContext.SchemaSet.Add(schema);
            schemaExportContext.NamespacePrefixSet.Add("mytypes", "sample://My.Samples.CodeSnippets/PreDefinedTypes");
        }
        reader.Close();
    }
}

Remarks

The ResolveOperationMetadata and ResolveTypeMetadata methods of the IMetadataResolverHandler interface return corresponding OperationMetadata for a given operation identifier. The operation metadata can contain types that are resolved using the TypeMetadata subclasses. One of the metadata extensibility features of the WCF LOB Adapter SDK is to allow you to derive from the OperationMetadata or TypeMetadata classes and override the following methods to provide own XML schema instead of using the ParameterizedOperationMetadata and StructuredTypeMetadata classes.

  • ExportInputXmlSchema

  • ExportOutputXmlSchema

  • ExportXmlSchema

The XmlSchemaExportContext class provides access to all the W3C XML Schemas for a particular WSDL generation context and is used by the WSDL builder to emit the <types> section of WSDL.

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.XmlSchemaExportContext

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

XmlSchemaExportContext Members
Microsoft.ServiceModel.Channels.Common Namespace
IWsdlRetrieval
OperationMetadata
TypeMetadata


XmlSchemaExportContext Members
See Also Constructors Methods Properties
[image]

Defines the context while building schemas for generating WSDL. It includes the set of schemas that will be added as part of the generated WSDL and all the namespaces of the operation, complex types along with their prefixes, and the default metadata namespace for the WSDL generation.

The following tables list the members exposed by the XmlSchemaExportContext type.

Public Constructors

Name | Description
XmlSchemaExportContext | Creates an instance of the XmlSchemaExportContext class using the specified schemaSet, namespacePrefixSet, and defaultMetadataNamespace.
Top

Public Properties

 | Name | Description
public property | DefaultMetadataNamespace | Gets the default metadata namespace for WSDL construction.
public property | NamespacePrefixSet | Contains all namespaces related to new types and their prefixes as in ns1, ns2, ns3, and so on.
public property | SchemaSet | Gets an XmlSchemaSet object containing all the schemas pertaining to WSDL.
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

XmlSchemaExportContext Class
Microsoft.ServiceModel.Channels.Common Namespace
IWsdlRetrieval
OperationMetadata
TypeMetadata


XmlSchemaExportContext Constructor
[image]

Creates an instance of the XmlSchemaExportContext class using the specified schemaSet, namespacePrefixSet, and defaultMetadataNamespace.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim schemaSet As XmlSchemaSet
Dim namespacePrefixSet As Dictionary(Of String, String)
Dim defaultMetadataNamespace As String

Dim instance As New XmlSchemaExportContext(schemaSet, namespacePrefixSet, defaultMetadataNamespace)

Syntax

Visual Basic
Public Sub New ( _
    schemaSet As XmlSchemaSet, _
    namespacePrefixSet As Dictionary(Of String, String), _
    defaultMetadataNamespace As String _
)
C#
public XmlSchemaExportContext (
    XmlSchemaSet schemaSet,
    Dictionary<string,string> namespacePrefixSet,
    string defaultMetadataNamespace
)
C++
public:
XmlSchemaExportContext (
    XmlSchemaSet^ schemaSet,
    Dictionary<String^, String^>^ namespacePrefixSet,
    String^ defaultMetadataNamespace
)
J#
public XmlSchemaExportContext (
    XmlSchemaSet schemaSet,
    Dictionary<String,String> namespacePrefixSet,
    String defaultMetadataNamespace
)
JScript
public function XmlSchemaExportContext (
    schemaSet : XmlSchemaSet,
    namespacePrefixSet : Dictionary<String,String>,
    defaultMetadataNamespace : String
)

Parameters

schemaSet

Contains the set of schemas that will be added as part of the generated WSDL.

namespacePrefixSet

Contains all namespaces related to new types and their prefixes as in ns1, ns2, ns3..., and includes any array namespaces.

defaultMetadataNamespace

The default metadata namespace for WSDL construction.

Remarks

This class is used while constructing WSDL.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlSchemaExportContext Class
XmlSchemaExportContext Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlSchemaExportContext Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

XmlSchemaExportContext Class
Microsoft.ServiceModel.Channels.Common Namespace
IWsdlRetrieval
OperationMetadata
TypeMetadata


XmlSchemaExportContext Properties
[image]

Public Properties

 | Name | Description
public property | DefaultMetadataNamespace | Gets the default metadata namespace for WSDL construction.
public property | NamespacePrefixSet | Contains all namespaces related to new types and their prefixes as in ns1, ns2, ns3, and so on.
public property | SchemaSet | Gets an XmlSchemaSet object containing all the schemas pertaining to WSDL.

See Also

Reference

XmlSchemaExportContext Class
Microsoft.ServiceModel.Channels.Common Namespace
IWsdlRetrieval
OperationMetadata
TypeMetadata


XmlSchemaExportContext.DefaultMetadataNamespace Property
See Also Example
[image]

Gets the default metadata namespace for WSDL construction.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As XmlSchemaExportContext
Dim value As String

value = instance.DefaultMetadataNamespace

Syntax

Visual Basic
Public ReadOnly Property DefaultMetadataNamespace As String
C#
public string DefaultMetadataNamespace { get; }
C++
public:
property String^ DefaultMetadataNamespace {
    String^ get ();
}
J#
/** @property */
public String get_DefaultMetadataNamespace ()
JScript
public function get DefaultMetadataNamespace () : String

Property Value

A string containing the default namespace for WSDL construction.

Example

The following code example demonstrates that the default metadata namespace is set to Scheme name since OperationNamespace is not set.

C# Copy Code
public OperationMetadata ResolveOperationMetadata(string operationId, TimeSpan timeout, out TypeMetadataCollection extraTypeMetadataResolved)
{
    extraTypeMetadataResolved = null;
    ParameterizedOperationMetadata opMetadata = new ParameterizedOperationMetadata(operationId, "");
    // opMetadata.OperationNamespace = SampleAdapter.SERVICENAMESPACE;
    opMetadata.OperationGroup = "SampleContract";
    // resolve metadata here
    // . . .
    return opMetadata;
}

The following is the excerpt from the generated WSDL. Since the OperationNamespace is not set, the targetNamespace in <wsdl:definitions> is set to the scheme of the adapter.

Copy Code
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tns="sample://My.Samples.CodeSnippets" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:ns1="sample" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="sample://My.Samples.CodeSnippets" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets/types" elementFormDefault="qualified" targetNamespace="sample" version="1.0">
      <xs:import namespace="sample://My.Samples.CodeSnippets/types" />
    </xsd:schema>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns2="sample://My.Samples.CodeSnippets/types" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets/types" version="1.0">
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="SampleContract_AddCustomer_InputMessage">
    <wsdl:part name="parameters" element="ns1:AddCustomer" />
  </wsdl:message>
  <wsdl:message name="SampleContract_AddCustomer_OutputMessage">
    <wsdl:part name="parameters" element="ns1:AddCustomerResponse" />
  </wsdl:message>
  <wsdl:portType name="SampleContract">
    <wsdl:operation name="AddCustomer">
      <wsdl:input wsaw:Action="/Customer/AddCustomer" message="tns:SampleContract_AddCustomer_InputMessage" />
      <wsdl:output wsaw:Action="/Customer/AddCustomer/response" message="tns:SampleContract_AddCustomer_OutputMessage" />
    </wsdl:operation>
  </wsdl:portType>
</wsdl:definitions>

Remarks

If you do not set the metadata namespace, the default metadata namespace is set to the Scheme name. This namespace is used in the generated WSDL, when a custom namespace is not provided in the OperationNamespace and TypeNamespace properties.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

XmlSchemaExportContext Class
XmlSchemaExportContext Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlSchemaExportContext.NamespacePrefixSet Property
See Also Example
[image]

Contains all namespaces related to new types and their prefixes as in ns1, ns2, ns3, and so on.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As XmlSchemaExportContext
Dim value As Dictionary(Of String, String)

value = instance.NamespacePrefixSet

Syntax

Visual Basic
Public ReadOnly Property NamespacePrefixSet As Dictionary(Of String, String)
C#
public Dictionary<string,string> NamespacePrefixSet { get; }
C++
public:
property Dictionary<String^, String^>^ NamespacePrefixSet {
    Dictionary<String^, String^>^ get ();
}
J#
/** @property */
public Dictionary<String,String> get_NamespacePrefixSet ()
JScript
public function get NamespacePrefixSet () : Dictionary<String,String>

Property Value

A dictionary object containing all namespaces related to new types and their prefixes as in ns1, ns2, ns3, and so on.

Example

The NamespacePrefixSet will have these values for the following WSDL definition.

  • “ns2”, “sample://My.Samples.CodeSnippets”

  • “ns3”, “sample://My.Samples.CodeSnippets/Types”

Copy Code
<wsdl:definitions
xmlns:tns="sample://My.Samples.CodeSnippets"
xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ns2="sample://My.Sample.CodeSnippets"xmlns:ns3="sample://My.Sample.CodeSnippets/Types"
targetNamespace="sample://My.Samples.CodeSnippets"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets" version="1.0">
    </xsd:schema>
    <xsd:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="sample://My.Samples.CodeSnippets/Types" version="1.0">
    </xsd:schema>
  </wsdl:types>
  <wsdl:message/>
  <wsdl:portType/>
</wsdl:definitions>

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Change History

See Also

Reference

XmlSchemaExportContext Class
XmlSchemaExportContext Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlSchemaExportContext.SchemaSet Property
[image]

Gets an XmlSchemaSet object containing all the schemas pertaining to WSDL.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As XmlSchemaExportContext
Dim value As XmlSchemaSet

value = instance.SchemaSet

Syntax

Visual Basic
Public ReadOnly Property SchemaSet As XmlSchemaSet
C#
public XmlSchemaSet SchemaSet { get; }
C++
public:
property XmlSchemaSet^ SchemaSet {
    XmlSchemaSet^ get ();
}
J#
/** @property */
public XmlSchemaSet get_SchemaSet ()
JScript
public function get SchemaSet () : XmlSchemaSet

Property Value

An XmlSchemaSet object containing all the schemas pertaining to WSDL.

Remarks

This set contains the schemas that will be placed in <types/> section of the generated WSDL.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlSchemaExportContext Class
XmlSchemaExportContext Members
Microsoft.ServiceModel.Channels.Common Namespace
XmlSchemaSet


XmlWriterGenerationException Class
See Also Members
[image]

Represents an exception that is thrown when there is an error generating data for an XmlWriter.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As XmlWriterGenerationException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class XmlWriterGenerationException
    Inherits AdapterException
C#
[SerializableAttribute]
public class XmlWriterGenerationException : AdapterException
C++
[SerializableAttribute]
public ref class XmlWriterGenerationException : public AdapterException
J#
/** @attribute SerializableAttribute() */
public class XmlWriterGenerationException extends AdapterException
JScript
SerializableAttribute
public class XmlWriterGenerationException extends AdapterException

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
Microsoft.ServiceModel.Channels.Common.AdapterException
Microsoft.ServiceModel.Channels.Common.XmlWriterGenerationException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterGenerationException Members
See Also Constructors Methods Properties
[image]

Represents an exception that is thrown when there is an error generating data for an XmlWriter.

The following tables list the members exposed by the XmlWriterGenerationException type.

Public Constructors (see also Protected Constructors)

Name | Description
XmlWriterGenerationException | Overloaded. Initializes a new instance of the XmlWriterGenerationException class.
Top

Protected Constructors

Name | Description
XmlWriterGenerationException | Overloaded. Initializes a new instance of the XmlWriterGenerationException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

XmlWriterGenerationException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterGenerationException Constructor
[image]

Initializes a new instance of the XmlWriterGenerationException class.

Overload List

Name | Description
XmlWriterGenerationException () | Initializes a new instance of the XmlWriterGenerationException class.
XmlWriterGenerationException (SerializationInfo, StreamingContext) | Initializes a new instance of the XmlWriterGenerationException class with the specified serialization and context objects.
XmlWriterGenerationException (String) | Initializes a new instance of the XmlWriterGenerationException class with the specified error message.
XmlWriterGenerationException (String, Exception) | Initializes a new instance of the XmlWriterGenerationException class with the specified error message and inner Exception.

See Also

Reference

XmlWriterGenerationException Class
XmlWriterGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterGenerationException Constructor ()
[image]

Initializes a new instance of the XmlWriterGenerationException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New XmlWriterGenerationException

Syntax

Visual Basic
Public Sub New
C#
public XmlWriterGenerationException ()
C++
public:
XmlWriterGenerationException ()
J#
public XmlWriterGenerationException ()
JScript
public function XmlWriterGenerationException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterGenerationException Class
XmlWriterGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterGenerationException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the XmlWriterGenerationException class with the specified serialization and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New XmlWriterGenerationException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected XmlWriterGenerationException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
XmlWriterGenerationException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected XmlWriterGenerationException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function XmlWriterGenerationException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

info

Information relevant to the deserialization process.

context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterGenerationException Class
XmlWriterGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterGenerationException Constructor (String)
[image]

Initializes a new instance of the XmlWriterGenerationException class with the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New XmlWriterGenerationException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public XmlWriterGenerationException (
    string message
)
C++
public:
XmlWriterGenerationException (
    String^ message
)
J#
public XmlWriterGenerationException (
    String message
)
JScript
public function XmlWriterGenerationException (
    message : String
)

Parameters

message

The message that explains the reason for this exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterGenerationException Class
XmlWriterGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterGenerationException Constructor (String, Exception)
[image]

Initializes a new instance of the XmlWriterGenerationException class with the specified error message and inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New XmlWriterGenerationException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public XmlWriterGenerationException (
    string message,
    Exception inner
)
C++
public:
XmlWriterGenerationException (
    String^ message,
    Exception^ inner
)
J#
public XmlWriterGenerationException (
    String message,
    Exception inner
)
JScript
public function XmlWriterGenerationException (
    message : String,
    inner : Exception
)

Parameters

message

Information that explains the reason for this exception.

inner

The exception that is the cause of the current exception. If the inner parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterGenerationException Class
XmlWriterGenerationException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterGenerationException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

XmlWriterGenerationException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterGenerationException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

XmlWriterGenerationException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterParsingException Class
See Also Members
[image]

Represents an exception that is thrown when there is an error parsing data for an XmlWriter

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As XmlWriterParsingException

Syntax

Visual Basic
<SerializableAttribute> _
Public Class XmlWriterParsingException
    Inherits AdapterException
C#
[SerializableAttribute]
public class XmlWriterParsingException : AdapterException
C++
[SerializableAttribute]
public ref class XmlWriterParsingException : public AdapterException
J#
/** @attribute SerializableAttribute() */
public class XmlWriterParsingException extends AdapterException
JScript
SerializableAttribute
public class XmlWriterParsingException extends AdapterException

Inheritance Hierarchy

System.Object
System.Exception
System.SystemException
System.ServiceModel.CommunicationException
Microsoft.ServiceModel.Channels.Common.AdapterException
Microsoft.ServiceModel.Channels.Common.XmlWriterParsingException

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterParsingException Members
See Also Constructors Methods Properties
[image]

Represents an exception that is thrown when there is an error parsing data for an XmlWriter

The following tables list the members exposed by the XmlWriterParsingException type.

Public Constructors (see also Protected Constructors)

Name | Description
XmlWriterParsingException | Overloaded. Initializes a new instance of the XmlWriterParsingException class.
Top

Protected Constructors

Name | Description
XmlWriterParsingException | Overloaded. Initializes a new instance of the XmlWriterParsingException class.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)
Top

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

XmlWriterParsingException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterParsingException Constructor
[image]

Initializes a new instance of the XmlWriterParsingException class.

Overload List

Name | Description
XmlWriterParsingException () | Initializes a new instance of the XmlWriterParsingException class.
XmlWriterParsingException (SerializationInfo, StreamingContext) | Initializes a new instance of the XmlWriterParsingException class with the specified serialization and context objects.
XmlWriterParsingException (String) | Initializes a new instance of the XmlWriterParsingException class with the specified error message.
XmlWriterParsingException (String, Exception) | Initializes a new instance of the XmlWriterParsingException class with the specified message and inner Exception.

See Also

Reference

XmlWriterParsingException Class
XmlWriterParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterParsingException Constructor ()
[image]

Initializes a new instance of the XmlWriterParsingException class.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New XmlWriterParsingException

Syntax

Visual Basic
Public Sub New
C#
public XmlWriterParsingException ()
C++
public:
XmlWriterParsingException ()
J#
public XmlWriterParsingException ()
JScript
public function XmlWriterParsingException ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterParsingException Class
XmlWriterParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterParsingException Constructor (SerializationInfo, StreamingContext)
[image]

Initializes a new instance of the XmlWriterParsingException class with the specified serialization and context objects.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim info As SerializationInfo
Dim context As StreamingContext

Dim instance As New XmlWriterParsingException(info, context)

Syntax

Visual Basic
Protected Sub New ( _
    info As SerializationInfo, _
    context As StreamingContext _
)
C#
protected XmlWriterParsingException (
    SerializationInfo info,
    StreamingContext context
)
C++
protected:
XmlWriterParsingException (
    SerializationInfo^ info,
    StreamingContext context
)
J#
protected XmlWriterParsingException (
    SerializationInfo info,
    StreamingContext context
)
JScript
protected function XmlWriterParsingException (
    info : SerializationInfo,
    context : StreamingContext
)

Parameters

Info

Information relevant to the deserialization process.

Context

The context of the deserialization process.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterParsingException Class
XmlWriterParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterParsingException Constructor (String)
[image]

Initializes a new instance of the XmlWriterParsingException class with the specified error message.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String

Dim instance As New XmlWriterParsingException(message)

Syntax

Visual Basic
Public Sub New ( _
    message As String _
)
C#
public XmlWriterParsingException (
    string message
)
C++
public:
XmlWriterParsingException (
    String^ message
)
J#
public XmlWriterParsingException (
    String message
)
JScript
public function XmlWriterParsingException (
    message : String
)

Parameters

Message

The message that explains the reason for this exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterParsingException Class
XmlWriterParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterParsingException Constructor (String, Exception)
[image]

Initializes a new instance of the XmlWriterParsingException class with the specified message and inner Exception.

Namespace: Microsoft.ServiceModel.Channels.Common
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim message As String
Dim inner As Exception

Dim instance As New XmlWriterParsingException(message, inner)

Syntax

Visual Basic
Public Sub New ( _
    message As String, _
    inner As Exception _
)
C#
public XmlWriterParsingException (
    string message,
    Exception inner
)
C++
public:
XmlWriterParsingException (
    String^ message,
    Exception^ inner
)
J#
public XmlWriterParsingException (
    String message,
    Exception inner
)
JScript
public function XmlWriterParsingException (
    message : String,
    inner : Exception
)

Parameters

Message

The message that explains the reason for this exception.

Inner

The exception that is the cause of the current exception. If the inner parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

XmlWriterParsingException Class
XmlWriterParsingException Members
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterParsingException Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetBaseException | (inherited from Exception)
public method | GetHashCode | (inherited from Object)
public method | GetObjectData | (inherited from Exception)
public method | GetType | (inherited from Exception)
public method | ToString | Overridden. (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

XmlWriterParsingException Class
Microsoft.ServiceModel.Channels.Common Namespace


XmlWriterParsingException Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | Data | (inherited from Exception)
public property | HelpLink | (inherited from Exception)
public property | InnerException | (inherited from Exception)
public property | Message | (inherited from Exception)
public property | Source | (inherited from Exception)
public property | StackTrace | (inherited from Exception)
public property | TargetSite | (inherited from Exception)

Protected Properties

 | Name | Description
protected property | HResult | (inherited from Exception)

See Also

Reference

XmlWriterParsingException Class
Microsoft.ServiceModel.Channels.Common Namespace


Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace
Contains types used internally by the WCF LOB Adapter SDK.

Classes

Class | Description
BrowseRequest |
BrowseResponse |
GetMetadataRequest |
GetMetadataResponse |
MetadataRetrievalNodeArray |
SearchRequest |
SearchResponse |


BrowseRequest Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BrowseRequest

Syntax

Visual Basic
<SerializableAttribute> _
<XmlRootAttribute(ElementName:="Browse", Namespace:="http://schemas.microsoft.com/servicemodel/adapters/metadata")> _
Public Class BrowseRequest
C#
[SerializableAttribute]
[XmlRootAttribute(ElementName="Browse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public class BrowseRequest
C++
[SerializableAttribute]
[XmlRootAttribute(ElementName=L"Browse", Namespace=L"http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public ref class BrowseRequest
J#
/** @attribute SerializableAttribute() */
/** @attribute XmlRootAttribute(ElementName="Browse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata") */
public class BrowseRequest
JScript
SerializableAttribute
XmlRootAttribute(ElementName="Browse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")
public class BrowseRequest

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MetadataSerialization.BrowseRequest

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BrowseRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseRequest Members
See Also Constructors Fields Methods
[image]

The following tables list the members exposed by the BrowseRequest type.

Public Constructors

Name | Description
BrowseRequest |
Top

Public Fields

 | Name | Description
public field | childStartIndex |
public field | maxChildNodes |
public field | nodeId |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

BrowseRequest Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseRequest Fields
[image]

Public Fields

 | Name | Description
public field | childStartIndex |
public field | maxChildNodes |
public field | nodeId |

See Also

Reference

BrowseRequest Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseRequest.childStartIndex Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BrowseRequest
Dim value As Integer

value = instance.childStartIndex

instance.childStartIndex = value

Syntax

Visual Basic
<XmlElementAttribute> _
Public childStartIndex As Integer
C#
[XmlElementAttribute]
public int childStartIndex
C++
[XmlElementAttribute]
public:
int childStartIndex
J#
/** @attribute XmlElementAttribute() */
public int childStartIndex
JScript
XmlElementAttribute
public var childStartIndex : int

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BrowseRequest Class
BrowseRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseRequest.maxChildNodes Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BrowseRequest
Dim value As Integer

value = instance.maxChildNodes

instance.maxChildNodes = value

Syntax

Visual Basic
<XmlElementAttribute> _
Public maxChildNodes As Integer
C#
[XmlElementAttribute]
public int maxChildNodes
C++
[XmlElementAttribute]
public:
int maxChildNodes
J#
/** @attribute XmlElementAttribute() */
public int maxChildNodes
JScript
XmlElementAttribute
public var maxChildNodes : int

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BrowseRequest Class
BrowseRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseRequest.nodeId Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BrowseRequest
Dim value As String

value = instance.nodeId

instance.nodeId = value

Syntax

Visual Basic
<XmlElementAttribute> _
Public nodeId As String
C#
[XmlElementAttribute]
public string nodeId
C++
[XmlElementAttribute]
public:
String^ nodeId
J#
/** @attribute XmlElementAttribute() */
public String nodeId
JScript
XmlElementAttribute
public var nodeId : String

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BrowseRequest Class
BrowseRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseRequest Constructor
[image]

Initializes a new instance of the BrowseRequest Class.

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New BrowseRequest

Syntax

Visual Basic
Public Sub New
C#
public BrowseRequest ()
C++
public:
BrowseRequest ()
J#
public BrowseRequest ()
JScript
public function BrowseRequest ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BrowseRequest Class
BrowseRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseRequest Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

BrowseRequest Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseResponse Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BrowseResponse

Syntax

Visual Basic
<SerializableAttribute> _
<XmlRootAttribute(ElementName:="BrowseResponse", Namespace:="http://schemas.microsoft.com/servicemodel/adapters/metadata")> _
Public Class BrowseResponse
C#
[SerializableAttribute]
[XmlRootAttribute(ElementName="BrowseResponse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public class BrowseResponse
C++
[SerializableAttribute]
[XmlRootAttribute(ElementName=L"BrowseResponse", Namespace=L"http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public ref class BrowseResponse
J#
/** @attribute SerializableAttribute() */
/** @attribute XmlRootAttribute(ElementName="BrowseResponse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata") */
public class BrowseResponse
JScript
SerializableAttribute
XmlRootAttribute(ElementName="BrowseResponse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")
public class BrowseResponse

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MetadataSerialization.BrowseResponse

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BrowseResponse Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseResponse Members
See Also Constructors Fields Methods
[image]

The following tables list the members exposed by the BrowseResponse type.

Public Constructors

Name | Description
BrowseResponse |
Top

Public Fields

 | Name | Description
public field | BrowseResult |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

BrowseResponse Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseResponse Fields
[image]

Public Fields

 | Name | Description
public field | BrowseResult |

See Also

Reference

BrowseResponse Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseResponse.BrowseResult Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As BrowseResponse
Dim value As MetadataRetrievalNodeArray

value = instance.BrowseResult

instance.BrowseResult = value

Syntax

Visual Basic
<XmlElementAttribute> _
Public BrowseResult As MetadataRetrievalNodeArray
C#
[XmlElementAttribute]
public MetadataRetrievalNodeArray BrowseResult
C++
[XmlElementAttribute]
public:
MetadataRetrievalNodeArray^ BrowseResult
J#
/** @attribute XmlElementAttribute() */
public MetadataRetrievalNodeArray BrowseResult
JScript
XmlElementAttribute
public var BrowseResult : MetadataRetrievalNodeArray

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BrowseResponse Class
BrowseResponse Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseResponse Constructor
[image]

Initializes a new instance of the BrowseResponse Class.

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New BrowseResponse

Syntax

Visual Basic
Public Sub New
C#
public BrowseResponse ()
C++
public:
BrowseResponse ()
J#
public BrowseResponse ()
JScript
public function BrowseResponse ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BrowseResponse Class
BrowseResponse Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


BrowseResponse Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

BrowseResponse Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataRequest Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As GetMetadataRequest

Syntax

Visual Basic
<SerializableAttribute> _
<XmlRootAttribute(ElementName:="GetMetadata", Namespace:="http://schemas.microsoft.com/servicemodel/adapters/metadata")> _
Public Class GetMetadataRequest
C#
[SerializableAttribute]
[XmlRootAttribute(ElementName="GetMetadata", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public class GetMetadataRequest
C++
[SerializableAttribute]
[XmlRootAttribute(ElementName=L"GetMetadata", Namespace=L"http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public ref class GetMetadataRequest
J#
/** @attribute SerializableAttribute() */
/** @attribute XmlRootAttribute(ElementName="GetMetadata", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata") */
public class GetMetadataRequest
JScript
SerializableAttribute
XmlRootAttribute(ElementName="GetMetadata", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")
public class GetMetadataRequest

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MetadataSerialization.GetMetadataRequest

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GetMetadataRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataRequest Members
See Also Constructors Fields Methods
[image]

The following tables list the members exposed by the GetMetadataRequest type.

Public Constructors

Name | Description
GetMetadataRequest |
Top

Public Fields

 | Name | Description
public field | nodes |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

GetMetadataRequest Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataRequest Fields
[image]

Public Fields

 | Name | Description
public field | nodes |

See Also

Reference

GetMetadataRequest Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataRequest.nodes Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As GetMetadataRequest
Dim value As MetadataRetrievalNodeArray

value = instance.nodes

instance.nodes = value

Syntax

Visual Basic
<XmlElementAttribute(IsNullable:=True)> _
Public nodes As MetadataRetrievalNodeArray
C#
[XmlElementAttribute(IsNullable=true)]
public MetadataRetrievalNodeArray nodes
C++
[XmlElementAttribute(IsNullable=true)]
public:
MetadataRetrievalNodeArray^ nodes
J#
/** @attribute XmlElementAttribute(IsNullable=true) */
public MetadataRetrievalNodeArray nodes
JScript
XmlElementAttribute(IsNullable=true)
public var nodes : MetadataRetrievalNodeArray

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GetMetadataRequest Class
GetMetadataRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataRequest Constructor
[image]

Initializes a new instance of the GetMetadataRequest Class.

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New GetMetadataRequest

Syntax

Visual Basic
Public Sub New
C#
public GetMetadataRequest ()
C++
public:
GetMetadataRequest ()
J#
public GetMetadataRequest ()
JScript
public function GetMetadataRequest ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GetMetadataRequest Class
GetMetadataRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataRequest Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

GetMetadataRequest Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataResponse Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As GetMetadataResponse

Syntax

Visual Basic
<SerializableAttribute> _
<XmlRootAttribute(ElementName:="GetMetadataResponse", Namespace:="http://schemas.microsoft.com/servicemodel/adapters/metadata")> _
Public Class GetMetadataResponse
C#
[SerializableAttribute]
[XmlRootAttribute(ElementName="GetMetadataResponse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public class GetMetadataResponse
C++
[SerializableAttribute]
[XmlRootAttribute(ElementName=L"GetMetadataResponse", Namespace=L"http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public ref class GetMetadataResponse
J#
/** @attribute SerializableAttribute() */
/** @attribute XmlRootAttribute(ElementName="GetMetadataResponse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata") */
public class GetMetadataResponse
JScript
SerializableAttribute
XmlRootAttribute(ElementName="GetMetadataResponse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")
public class GetMetadataResponse

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MetadataSerialization.GetMetadataResponse

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GetMetadataResponse Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataResponse Members
See Also Constructors Fields Methods
[image]

The following tables list the members exposed by the GetMetadataResponse type.

Public Constructors

Name | Description
GetMetadataResponse |
Top

Public Fields

 | Name | Description
public field | GetMetadataResult |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

GetMetadataResponse Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataResponse Fields
[image]

Public Fields

 | Name | Description
public field | GetMetadataResult |

See Also

Reference

GetMetadataResponse Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataResponse.GetMetadataResult Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As GetMetadataResponse
Dim value As ServiceDescription

value = instance.GetMetadataResult

instance.GetMetadataResult = value

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields")> _
<XmlElementAttribute(IsNullable:=True)> _
Public GetMetadataResult As ServiceDescription
C#
[SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields")]
[XmlElementAttribute(IsNullable=true)]
public ServiceDescription GetMetadataResult
C++
[SuppressMessageAttribute(L"Microsoft.Usage", L"CA2235:MarkAllNonSerializableFields")]
[XmlElementAttribute(IsNullable=true)]
public:
ServiceDescription^ GetMetadataResult
J#
/** @attribute SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields") */
/** @attribute XmlElementAttribute(IsNullable=true) */
public ServiceDescription GetMetadataResult
JScript
SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields")
XmlElementAttribute(IsNullable=true)
public var GetMetadataResult : ServiceDescription

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GetMetadataResponse Class
GetMetadataResponse Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataResponse Constructor
[image]

Initializes a new instance of the GetMetadataResponse Class.

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New GetMetadataResponse

Syntax

Visual Basic
Public Sub New
C#
public GetMetadataResponse ()
C++
public:
GetMetadataResponse ()
J#
public GetMetadataResponse ()
JScript
public function GetMetadataResponse ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

GetMetadataResponse Class
GetMetadataResponse Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


GetMetadataResponse Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

GetMetadataResponse Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


MetadataRetrievalNodeArray Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNodeArray

Syntax

Visual Basic
<SerializableAttribute> _
<SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields")> _
Public Class MetadataRetrievalNodeArray
C#
[SerializableAttribute]
[SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields")]
public class MetadataRetrievalNodeArray
C++
[SerializableAttribute]
[SuppressMessageAttribute(L"Microsoft.Usage", L"CA2235:MarkAllNonSerializableFields")]
public ref class MetadataRetrievalNodeArray
J#
/** @attribute SerializableAttribute() */
/** @attribute SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields") */
public class MetadataRetrievalNodeArray
JScript
SerializableAttribute
SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields")
public class MetadataRetrievalNodeArray

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MetadataSerialization.MetadataRetrievalNodeArray

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNodeArray Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


MetadataRetrievalNodeArray Members
See Also Constructors Fields Methods
[image]

The following tables list the members exposed by the MetadataRetrievalNodeArray type.

Public Constructors

Name | Description
MetadataRetrievalNodeArray |
Top

Public Fields

 | Name | Description
public field | MetadataRetrievalNode |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

MetadataRetrievalNodeArray Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


MetadataRetrievalNodeArray Fields
[image]

Public Fields

 | Name | Description
public field | MetadataRetrievalNode |

See Also

Reference

MetadataRetrievalNodeArray Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


MetadataRetrievalNodeArray.MetadataRetrievalNode Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As MetadataRetrievalNodeArray
Dim value As MetadataRetrievalNode()

value = instance.MetadataRetrievalNode

instance.MetadataRetrievalNode = value

Syntax

Visual Basic
<XmlElementAttribute> _
<SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields")> _
Public MetadataRetrievalNode As MetadataRetrievalNode()
C#
[XmlElementAttribute]
[SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields")]
public MetadataRetrievalNode[] MetadataRetrievalNode
C++
[XmlElementAttribute]
[SuppressMessageAttribute(L"Microsoft.Usage", L"CA2235:MarkAllNonSerializableFields")]
public:
array<MetadataRetrievalNode^>^ MetadataRetrievalNode
J#
/** @attribute XmlElementAttribute() */
/** @attribute SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields") */
public MetadataRetrievalNode[] MetadataRetrievalNode
JScript
XmlElementAttribute
SuppressMessageAttribute("Microsoft.Usage", "CA2235:MarkAllNonSerializableFields")
public var MetadataRetrievalNode : MetadataRetrievalNode[]

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNodeArray Class
MetadataRetrievalNodeArray Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


MetadataRetrievalNodeArray Constructor
[image]

Initializes a new instance of the MetadataRetrievalNodeArray Class.

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New MetadataRetrievalNodeArray

Syntax

Visual Basic
Public Sub New
C#
public MetadataRetrievalNodeArray ()
C++
public:
MetadataRetrievalNodeArray ()
J#
public MetadataRetrievalNodeArray ()
JScript
public function MetadataRetrievalNodeArray ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataRetrievalNodeArray Class
MetadataRetrievalNodeArray Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


MetadataRetrievalNodeArray Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

MetadataRetrievalNodeArray Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchRequest Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SearchRequest

Syntax

Visual Basic
<SerializableAttribute> _
<XmlRootAttribute(ElementName:="Search", Namespace:="http://schemas.microsoft.com/servicemodel/adapters/metadata")> _
Public Class SearchRequest
C#
[SerializableAttribute]
[XmlRootAttribute(ElementName="Search", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public class SearchRequest
C++
[SerializableAttribute]
[XmlRootAttribute(ElementName=L"Search", Namespace=L"http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public ref class SearchRequest
J#
/** @attribute SerializableAttribute() */
/** @attribute XmlRootAttribute(ElementName="Search", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata") */
public class SearchRequest
JScript
SerializableAttribute
XmlRootAttribute(ElementName="Search", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")
public class SearchRequest

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MetadataSerialization.SearchRequest

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SearchRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchRequest Members
See Also Constructors Fields Methods
[image]

The following tables list the members exposed by the SearchRequest type.

Public Constructors

Name | Description
SearchRequest |
Top

Public Fields

 | Name | Description
public field | maxChildNodes |
public field | nodeId |
public field | searchCriteria |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

SearchRequest Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchRequest Fields
[image]

Public Fields

 | Name | Description
public field | maxChildNodes |
public field | nodeId |
public field | searchCriteria |

See Also

Reference

SearchRequest Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchRequest.maxChildNodes Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SearchRequest
Dim value As Integer

value = instance.maxChildNodes

instance.maxChildNodes = value

Syntax

Visual Basic
<XmlElementAttribute> _
Public maxChildNodes As Integer
C#
[XmlElementAttribute]
public int maxChildNodes
C++
[XmlElementAttribute]
public:
int maxChildNodes
J#
/** @attribute XmlElementAttribute() */
public int maxChildNodes
JScript
XmlElementAttribute
public var maxChildNodes : int

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SearchRequest Class
SearchRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchRequest.nodeId Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SearchRequest
Dim value As String

value = instance.nodeId

instance.nodeId = value

Syntax

Visual Basic
<XmlElementAttribute> _
Public nodeId As String
C#
[XmlElementAttribute]
public string nodeId
C++
[XmlElementAttribute]
public:
String^ nodeId
J#
/** @attribute XmlElementAttribute() */
public String nodeId
JScript
XmlElementAttribute
public var nodeId : String

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SearchRequest Class
SearchRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchRequest.searchCriteria Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SearchRequest
Dim value As String

value = instance.searchCriteria

instance.searchCriteria = value

Syntax

Visual Basic
<XmlElementAttribute> _
Public searchCriteria As String
C#
[XmlElementAttribute]
public string searchCriteria
C++
[XmlElementAttribute]
public:
String^ searchCriteria
J#
/** @attribute XmlElementAttribute() */
public String searchCriteria
JScript
XmlElementAttribute
public var searchCriteria : String

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SearchRequest Class
SearchRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchRequest Constructor
[image]

Initializes a new instance of the SearchRequest Class.

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New SearchRequest

Syntax

Visual Basic
Public Sub New
C#
public SearchRequest ()
C++
public:
SearchRequest ()
J#
public SearchRequest ()
JScript
public function SearchRequest ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SearchRequest Class
SearchRequest Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchRequest Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

SearchRequest Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchResponse Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SearchResponse

Syntax

Visual Basic
<SerializableAttribute> _
<XmlRootAttribute(ElementName:="SearchResponse", Namespace:="http://schemas.microsoft.com/servicemodel/adapters/metadata")> _
Public Class SearchResponse
C#
[SerializableAttribute]
[XmlRootAttribute(ElementName="SearchResponse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public class SearchResponse
C++
[SerializableAttribute]
[XmlRootAttribute(ElementName=L"SearchResponse", Namespace=L"http://schemas.microsoft.com/servicemodel/adapters/metadata")]
public ref class SearchResponse
J#
/** @attribute SerializableAttribute() */
/** @attribute XmlRootAttribute(ElementName="SearchResponse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata") */
public class SearchResponse
JScript
SerializableAttribute
XmlRootAttribute(ElementName="SearchResponse", Namespace="http://schemas.microsoft.com/servicemodel/adapters/metadata")
public class SearchResponse

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Common.MetadataSerialization.SearchResponse

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SearchResponse Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchResponse Members
See Also Constructors Fields Methods
[image]

The following tables list the members exposed by the SearchResponse type.

Public Constructors

Name | Description
SearchResponse |
Top

Public Fields

 | Name | Description
public field | SearchResult |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

SearchResponse Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchResponse Fields
[image]

Public Fields

 | Name | Description
public field | SearchResult |

See Also

Reference

SearchResponse Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchResponse.SearchResult Field
[image]

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As SearchResponse
Dim value As MetadataRetrievalNodeArray

value = instance.SearchResult

instance.SearchResult = value

Syntax

Visual Basic
<XmlElementAttribute> _
Public SearchResult As MetadataRetrievalNodeArray
C#
[XmlElementAttribute]
public MetadataRetrievalNodeArray SearchResult
C++
[XmlElementAttribute]
public:
MetadataRetrievalNodeArray^ SearchResult
J#
/** @attribute XmlElementAttribute() */
public MetadataRetrievalNodeArray SearchResult
JScript
XmlElementAttribute
public var SearchResult : MetadataRetrievalNodeArray

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SearchResponse Class
SearchResponse Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchResponse Constructor
[image]

Initializes a new instance of the SearchResponse Class.

Namespace: Microsoft.ServiceModel.Channels.Common.MetadataSerialization
Assembly: Microsoft.ServiceModel.Channels (in Microsoft.ServiceModel.Channels.dll)

Usage

Visual Basic
Dim instance As New SearchResponse

Syntax

Visual Basic
Public Sub New
C#
public SearchResponse ()
C++
public:
SearchResponse ()
J#
public SearchResponse ()
JScript
public function SearchResponse ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

SearchResponse Class
SearchResponse Members
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


SearchResponse Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

SearchResponse Class
Microsoft.ServiceModel.Channels.Common.MetadataSerialization Namespace


Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace
Contains types used to implement the Add Adapter Service Reference Visual Studio Plug-in and Consume Adapter Service BizTalk Project Add-in tools.

Classes

Class | Description
AdapterChangedEventArgs |
BindingFactory |
ConnectionStateChangedEventArgs |
ExceptionForm |
MetadataOperationsChangedEventArgs |
MetadataUserControl |
PropertiesEventArgs |
PropertiesForm |

Enumerations

Enumeration | Description
ConnectionState |
ContractType |
InvokedFrom |


AdapterChangedEventArgs Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As AdapterChangedEventArgs

Syntax

Visual Basic
Public NotInheritable Class AdapterChangedEventArgs
    Inherits EventArgs
C#
public sealed class AdapterChangedEventArgs : EventArgs
C++
public ref class AdapterChangedEventArgs sealed : public EventArgs
J#
public final class AdapterChangedEventArgs extends EventArgs
JScript
public final class AdapterChangedEventArgs extends EventArgs

Inheritance Hierarchy

System.Object
System.EventArgs
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.AdapterChangedEventArgs

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterChangedEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


AdapterChangedEventArgs Members
See Also Constructors Methods Properties
[image]

The following tables list the members exposed by the AdapterChangedEventArgs type.

Public Constructors

Name | Description
AdapterChangedEventArgs |
Top

Public Properties

 | Name | Description
public property | Adapter |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

AdapterChangedEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


AdapterChangedEventArgs Constructor
[image]

Initializes a new instance of the AdapterChangedEventArgs Class.Initializes a new instance of the AdapterChangedEventArgs Class.

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim bind As AdapterBinding

Dim instance As New AdapterChangedEventArgs(bind)

Syntax

Visual Basic
Public Sub New ( _
    bind As AdapterBinding _
)
C#
public AdapterChangedEventArgs (
    AdapterBinding bind
)
C++
public:
AdapterChangedEventArgs (
    AdapterBinding^ bind
)
J#
public AdapterChangedEventArgs (
    AdapterBinding bind
)
JScript
public function AdapterChangedEventArgs (
    bind : AdapterBinding
)

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterChangedEventArgs Class
AdapterChangedEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


AdapterChangedEventArgs Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

AdapterChangedEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


AdapterChangedEventArgs Properties
[image]

Public Properties

 | Name | Description
public property | Adapter |

See Also

Reference

AdapterChangedEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


AdapterChangedEventArgs.Adapter Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As AdapterChangedEventArgs
Dim value As AdapterBinding

value = instance.Adapter

Syntax

Visual Basic
Public ReadOnly Property Adapter As AdapterBinding
C#
public AdapterBinding Adapter { get; }
C++
public:
property AdapterBinding^ Adapter {
    AdapterBinding^ get ();
}
J#
/** @property */
public AdapterBinding get_Adapter ()
JScript
public function get Adapter () : AdapterBinding

Property Value

Returns Binding.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

AdapterChangedEventArgs Class
AdapterChangedEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


BindingFactory Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic

Syntax

Visual Basic
Public NotInheritable Class BindingFactory
C#
public static class BindingFactory
C++
public ref class BindingFactory abstract sealed
J#
public final class BindingFactory
JScript
public final class BindingFactory

Inheritance Hierarchy

System.Object
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.BindingFactory

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BindingFactory Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


BindingFactory Members
See Also Methods
[image]

The following tables list the members exposed by the BindingFactory type.

Public Methods

Name | Description
CreateBindingConfigurationElement |
GetBindingName |
MachineConfigBindingSections |
Top

See Also

Reference

BindingFactory Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


BindingFactory Methods
[image]

Public Methods

Name | Description
CreateBindingConfigurationElement |
GetBindingName |
MachineConfigBindingSections |

See Also

Reference

BindingFactory Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


BindingFactory.CreateBindingConfigurationElement Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim bindingName As String
Dim bindingConfiguration As String
Dim returnValue As ConfigurationElement

returnValue = BindingFactory.CreateBindingConfigurationElement(bindingName, bindingConfiguration)

Syntax

Visual Basic
Public Shared Function CreateBindingConfigurationElement ( _
    bindingName As String, _
    bindingConfiguration As String _
) As ConfigurationElement
C#
public static ConfigurationElement CreateBindingConfigurationElement (
    string bindingName,
    string bindingConfiguration
)
C++
public:
static ConfigurationElement^ CreateBindingConfigurationElement (
    String^ bindingName,
    String^ bindingConfiguration
)
J#
public static ConfigurationElement CreateBindingConfigurationElement (
    String bindingName,
    String bindingConfiguration
)
JScript
public static function CreateBindingConfigurationElement (
    bindingName : String,
    bindingConfiguration : String
) : ConfigurationElement

Parameters

bindingName
bindingConfiguration

Return Value

Returns ConfigurationElement.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BindingFactory Class
BindingFactory Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


BindingFactory.GetBindingName Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim bindingElementType As Type
Dim returnValue As String

returnValue = BindingFactory.GetBindingName(bindingElementType)

Syntax

Visual Basic
Public Shared Function GetBindingName ( _
    bindingElementType As Type _
) As String
C#
public static string GetBindingName (
    Type bindingElementType
)
C++
public:
static String^ GetBindingName (
    Type^ bindingElementType
)
J#
public static String GetBindingName (
    Type bindingElementType
)
JScript
public static function GetBindingName (
    bindingElementType : Type
) : String

Parameters

bindingElementType

Return Value

Returns String.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BindingFactory Class
BindingFactory Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


BindingFactory.MachineConfigBindingSections Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim returnValue As ICollection(Of BindingCollectionElement)

returnValue = BindingFactory.MachineConfigBindingSections

Syntax

Visual Basic
Public Shared Function MachineConfigBindingSections As ICollection(Of BindingCollectionElement)
C#
public static ICollection<BindingCollectionElement> MachineConfigBindingSections ()
C++
public:
static ICollection<BindingCollectionElement^>^ MachineConfigBindingSections ()
J#
public static ICollection<BindingCollectionElement> MachineConfigBindingSections ()
JScript
public static function MachineConfigBindingSections () : ICollection<BindingCollectionElement>

Return Value

Returns ICollection.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

BindingFactory Class
BindingFactory Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ConnectionState Enumeration
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As ConnectionState

Syntax

Visual Basic
Public Enumeration ConnectionState
C#
public enum ConnectionState
C++
public enum class ConnectionState
J#
public enum ConnectionState
JScript
public enum ConnectionState

Members

Member name | Description
Connected |
Connecting |
Disconnected |

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ConnectionStateChangedEventArgs Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As ConnectionStateChangedEventArgs

Syntax

Visual Basic
Public NotInheritable Class ConnectionStateChangedEventArgs
    Inherits EventArgs
C#
public sealed class ConnectionStateChangedEventArgs : EventArgs
C++
public ref class ConnectionStateChangedEventArgs sealed : public EventArgs
J#
public final class ConnectionStateChangedEventArgs extends EventArgs
JScript
public final class ConnectionStateChangedEventArgs extends EventArgs

Inheritance Hierarchy

System.Object
System.EventArgs
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.ConnectionStateChangedEventArgs

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionStateChangedEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ConnectionStateChangedEventArgs Members
See Also Constructors Methods Properties
[image]

The following tables list the members exposed by the ConnectionStateChangedEventArgs type.

Public Constructors

Name | Description
ConnectionStateChangedEventArgs |
Top

Public Properties

 | Name | Description
public property | ConnectionState |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

ConnectionStateChangedEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ConnectionStateChangedEventArgs Constructor
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim connectionState As ConnectionState

Dim instance As New ConnectionStateChangedEventArgs(connectionState)

Syntax

Visual Basic
Public Sub New ( _
    connectionState As ConnectionState _
)
C#
public ConnectionStateChangedEventArgs (
    ConnectionState connectionState
)
C++
public:
ConnectionStateChangedEventArgs (
    ConnectionState connectionState
)
J#
public ConnectionStateChangedEventArgs (
    ConnectionState connectionState
)
JScript
public function ConnectionStateChangedEventArgs (
    connectionState : ConnectionState
)

Parameters

connectionState

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionStateChangedEventArgs Class
ConnectionStateChangedEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ConnectionStateChangedEventArgs Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

ConnectionStateChangedEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ConnectionStateChangedEventArgs Properties
[image]

Public Properties

 | Name | Description
public property | ConnectionState |

See Also

Reference

ConnectionStateChangedEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ConnectionStateChangedEventArgs.ConnectionState Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As ConnectionStateChangedEventArgs
Dim value As ConnectionState

value = instance.ConnectionState

Syntax

Visual Basic
Public ReadOnly Property ConnectionState As ConnectionState
C#
public ConnectionState ConnectionState { get; }
C++
public:
property ConnectionState ConnectionState {
    ConnectionState get ();
}
J#
/** @property */
public ConnectionState get_ConnectionState ()
JScript
public function get ConnectionState () : ConnectionState

Property Value

Returns ConnectionState.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ConnectionStateChangedEventArgs Class
ConnectionStateChangedEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ContractType Enumeration
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As ContractType

Syntax

Visual Basic
Public Enumeration ContractType
C#
public enum ContractType
C++
public enum class ContractType
J#
public enum ContractType
JScript
public enum ContractType

Members

Member name | Description
Inbound |
Outbound |

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ExceptionForm Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As ExceptionForm

Syntax

Visual Basic
Public Class ExceptionForm
    Inherits Form
C#
public class ExceptionForm : Form
C++
public ref class ExceptionForm : public Form
J#
public class ExceptionForm extends Form
JScript
public class ExceptionForm extends Form

Inheritance Hierarchy

System.Object
System.MarshalByRefObject
System.ComponentModel.Component
System.Windows.Forms.Control
System.Windows.Forms.ScrollableControl
System.Windows.Forms.ContainerControl
System.Windows.Forms.Form
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.ExceptionForm

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ExceptionForm Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ExceptionForm Members
See Also Constructors Events Methods Properties Explicit Interface Implementations
[image]

The following tables list the members exposed by the ExceptionForm type.

Public Constructors

Name | Description
ExceptionForm |
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | AcceptButton | (inherited from Form)
public property | AccessibilityObject | (inherited from Control)
public property | AccessibleDefaultActionDescription | (inherited from Control)
public property | AccessibleDescription | (inherited from Control)
public property | AccessibleName | (inherited from Control)
public property | AccessibleRole | (inherited from Control)
public property | ActiveControl | (inherited from ContainerControl)
public property | ActiveMdiChild | (inherited from Form)
public property | AllowDrop | (inherited from Control)
public property | AllowTransparency | (inherited from Form)
public property | Anchor | (inherited from Control)
public property | AutoScale | Obsolete. (inherited from Form)
public property | AutoScaleBaseSize | (inherited from Form)
public property | AutoScaleDimensions | (inherited from ContainerControl)
public property | AutoScaleMode | (inherited from ContainerControl)
public property | AutoScroll | Overridden. (inherited from ScrollableControl)
public property | AutoScrollMargin | (inherited from ScrollableControl)
public property | AutoScrollMinSize | (inherited from ScrollableControl)
public property | AutoScrollOffset | (inherited from Control)
public property | AutoScrollPosition | (inherited from ScrollableControl)
public property | AutoSize | Overridden. (inherited from Control)
public property | AutoSizeMode | (inherited from Form)
public property | AutoValidate | Overridden. (inherited from ContainerControl)
public property | BackColor | Overridden. (inherited from Control)
public property | BackgroundImage | (inherited from Control)
public property | BackgroundImageLayout | (inherited from Control)
public property | BindingContext | Overridden. (inherited from Control)
public property | Bottom | (inherited from Control)
public property | Bounds | (inherited from Control)
public property | CancelButton | (inherited from Form)
public property | CanFocus | (inherited from Control)
public property | CanSelect | (inherited from Control)
public property | Capture | (inherited from Control)
public property | CausesValidation | (inherited from Control)
public property | ClientRectangle | (inherited from Control)
public property | ClientSize | (inherited from Form)
public property | CompanyName | (inherited from Control)
public property | Container | (inherited from Component)
public property | ContainsFocus | (inherited from Control)
public property | ContextMenu | (inherited from Control)
public property | ContextMenuStrip | (inherited from Control)
public property | ControlBox | (inherited from Form)
public property | Controls | (inherited from Control)
public property | Created | (inherited from Control)
public property | CurrentAutoScaleDimensions | (inherited from ContainerControl)
public property | Cursor | (inherited from Control)
public property | DataBindings | (inherited from Control)
public property | DesktopBounds | (inherited from Form)
public property | DesktopLocation | (inherited from Form)
public property | DialogResult | (inherited from Form)
public property | DisplayRectangle | Overridden. (inherited from Control)
public property | Disposing | (inherited from Control)
public property | Dock | (inherited from Control)
public property | DockPadding | (inherited from ScrollableControl)
public property | Enabled | (inherited from Control)
public property | Focused | (inherited from Control)
public property | Font | (inherited from Control)
public property | ForeColor | (inherited from Control)
public property | FormBorderStyle | (inherited from Form)
public property | Handle | (inherited from Control)
public property | HasChildren | (inherited from Control)
public property | Height | (inherited from Control)
public property | HelpButton | (inherited from Form)
public property | HorizontalScroll | (inherited from ScrollableControl)
public property | Icon | (inherited from Form)
public property | ImeMode | (inherited from Control)
public property | InvokeRequired | (inherited from Control)
public property | IsAccessible | (inherited from Control)
public property | IsDisposed | (inherited from Control)
public property | IsHandleCreated | (inherited from Control)
public property | IsMdiChild | (inherited from Form)
public property | IsMdiContainer | (inherited from Form)
public property | IsMirrored | (inherited from Control)
public property | IsRestrictedWindow | (inherited from Form)
public property | KeyPreview | (inherited from Form)
public property | LayoutEngine | (inherited from Control)
public property | Left | (inherited from Control)
public property | Location | (inherited from Form)
public property | MainMenuStrip | (inherited from Form)
public property | Margin | (inherited from Form)
public property | MaximizeBox | (inherited from Form)
public property | MaximumSize | Overridden. (inherited from Control)
public property | MdiChildren | (inherited from Form)
public property | MdiParent | (inherited from Form)
public property | Menu | (inherited from Form)
public property | MergedMenu | (inherited from Form)
public property | MinimizeBox | (inherited from Form)
public property | MinimumSize | Overridden. (inherited from Control)
public property | Modal | (inherited from Form)
public property | Name | (inherited from Control)
public property | Opacity | (inherited from Form)
public property | OwnedForms | (inherited from Form)
public property | Owner | (inherited from Form)
public property | Padding | (inherited from Control)
public property | Parent | (inherited from Control)
public property | ParentForm | (inherited from ContainerControl)
public property | PreferredSize | (inherited from Control)
public property | ProductName | (inherited from Control)
public property | ProductVersion | (inherited from Control)
public property | RecreatingHandle | (inherited from Control)
public property | Region | (inherited from Control)
public property | RestoreBounds | (inherited from Form)
public property | Right | (inherited from Control)
public property | RightToLeft | (inherited from Control)
public property | RightToLeftLayout | (inherited from Form)
public property | ShowIcon | (inherited from Form)
public property | ShowInTaskbar | (inherited from Form)
public property | Site | Overridden. (inherited from Component)
public property | Size | (inherited from Form)
public property | SizeGripStyle | (inherited from Form)
public property | StartPosition | (inherited from Form)
public property | TabIndex | (inherited from Form)
public property | TabStop | (inherited from Form)
public property | Tag | (inherited from Control)
public property | Text | Overridden. (inherited from Control)
public property | Top | (inherited from Control)
public property | TopLevel | (inherited from Form)
public property | TopLevelControl | (inherited from Control)
public property | TopMost | (inherited from Form)
public property | TransparencyKey | (inherited from Form)
public property | UseWaitCursor | (inherited from Control)
public property | VerticalScroll | (inherited from ScrollableControl)
public property | Visible | (inherited from Control)
public property | Width | (inherited from Control)
public property | WindowState | (inherited from Form)
public property | WindowTarget | (inherited from Control)
Top

Protected Properties

 | Name | Description
protected property | AutoScaleFactor | (inherited from ContainerControl)
protected property | CanRaiseEvents | Overridden. (inherited from Component)
protected property | CreateParams | Overridden. (inherited from ContainerControl)
protected property | DefaultCursor | (inherited from Control)
protected property | DefaultImeMode | Overridden. (inherited from Control)
protected property | DefaultMargin | (inherited from Control)
protected property | DefaultMaximumSize | (inherited from Control)
protected property | DefaultMinimumSize | (inherited from Control)
protected property | DefaultPadding | (inherited from Control)
protected property | DefaultSize | Overridden. (inherited from Control)
protected property | DesignMode | (inherited from Component)
protected property | DoubleBuffered | (inherited from Control)
protected property | Events | (inherited from Component)
protected property | FontHeight | (inherited from Control)
protected property | HScroll | (inherited from ScrollableControl)
protected property | MaximizedBounds | (inherited from Form)
protected property | ResizeRedraw | (inherited from Control)
protected property | ScaleChildren | (inherited from Control)
protected property | ShowWithoutActivation | (inherited from Form)
protected property | VScroll | (inherited from ScrollableControl)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Activate | (inherited from Form)
public method | AddOwnedForm | (inherited from Form)
public method | BeginInvoke | (inherited from Control)
public method | BeginInvoke | (inherited from Control)
public method | BringToFront | (inherited from Control)
public method | Close | (inherited from Form)
public method | Contains | (inherited from Control)
public method | CreateControl | (inherited from Control)
public method | CreateGraphics | (inherited from Control)
public method | CreateObjRef | (inherited from MarshalByRefObject)
public method | Dispose | (inherited from Component)
public method | DoDragDrop | (inherited from Control)
public method | DrawToBitmap | (inherited from Control)
public method | EndInvoke | (inherited from Control)
public method | Equals | (inherited from Object)
public method | FindForm | (inherited from Control)
public method | Focus | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetContainerControl | (inherited from Control)
public method | GetHashCode | (inherited from Object)
public method | GetLifetimeService | (inherited from MarshalByRefObject)
public method | GetNextControl | (inherited from Control)
public method | GetPreferredSize | (inherited from Control)
public method | GetType | (inherited from Object)
public method | Hide | (inherited from Control)
public method | InitializeLifetimeService | (inherited from MarshalByRefObject)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | LayoutMdi | (inherited from Form)
public method | PerformAutoScale | (inherited from ContainerControl)
public method | PerformLayout | (inherited from Control)
public method | PerformLayout | (inherited from Control)
public method | PointToClient | (inherited from Control)
public method | PointToScreen | (inherited from Control)
public method | PreProcessControlMessage | (inherited from Control)
public method | PreProcessMessage | (inherited from Control)
public method | RectangleToClient | (inherited from Control)
public method | RectangleToScreen | (inherited from Control)
public method | Refresh | (inherited from Control)
public method | RemoveOwnedForm | (inherited from Form)
public method | ResetBackColor | (inherited from Control)
public method | ResetBindings | (inherited from Control)
public method | ResetCursor | (inherited from Control)
public method | ResetFont | (inherited from Control)
public method | ResetForeColor | (inherited from Control)
public method | ResetImeMode | (inherited from Control)
public method | ResetRightToLeft | (inherited from Control)
public method | ResetText | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | Scale | (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | ScrollControlIntoView | (inherited from ScrollableControl)
public method | Select | (inherited from Control)
public method | SelectNextControl | (inherited from Control)
public method | SendToBack | (inherited from Control)
public method | SetAutoScrollMargin | (inherited from ScrollableControl)
public method | SetBounds | (inherited from Control)
public method | SetBounds | (inherited from Control)
public method | SetDesktopBounds | (inherited from Form)
public method | SetDesktopLocation | (inherited from Form)
public method | Show | (inherited from Control)
public method | Show | (inherited from Form)
public method | ShowDialog | (inherited from Form)
public method | ShowDialog | (inherited from Form)
public method | SuspendLayout | (inherited from Control)
public method | ToString | Overridden. (inherited from Component)
public method | Update | (inherited from Control)
public method | Validate | (inherited from ContainerControl)
public method | Validate | (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)
Top

Protected Methods

 | Name | Description
protected method | AccessibilityNotifyClients | (inherited from Control)
protected method | ActivateMdiChild | (inherited from Form)
protected method | AdjustFormScrollbars | Overridden. (inherited from ContainerControl)
protected method | ApplyAutoScaling | Obsolete. (inherited from Form)
protected method | CenterToParent | (inherited from Form)
protected method | CenterToScreen | (inherited from Form)
protected method | CreateAccessibilityInstance | (inherited from Control)
protected method | CreateControlsInstance | Overridden. (inherited from Control)
protected method | CreateHandle | Overridden. (inherited from Control)
protected method | DefWndProc | Overridden. (inherited from Control)
protected method | DestroyHandle | (inherited from Control)
protected method | Dispose | Overridden.
protected method | Finalize | Overridden. (inherited from Object)
protected method | GetAccessibilityObjectById | (inherited from Control)
protected method | GetAutoSizeMode | (inherited from Control)
protected method | GetScaledBounds | Overridden. (inherited from Control)
protected method | GetScrollState | (inherited from ScrollableControl)
protected method | GetService | (inherited from Component)
protected method | GetStyle | (inherited from Control)
protected method | GetTopLevel | (inherited from Control)
protected method | InitLayout | (inherited from Control)
protected method | InvokeGotFocus | (inherited from Control)
protected method | InvokeLostFocus | (inherited from Control)
protected method | InvokeOnClick | (inherited from Control)
protected method | InvokePaint | (inherited from Control)
protected method | InvokePaintBackground | (inherited from Control)
protected method | IsInputChar | (inherited from Control)
protected method | IsInputKey | (inherited from Control)
protected method | MemberwiseClone | (inherited from MarshalByRefObject)
protected method | MemberwiseClone | (inherited from Object)
protected method | NotifyInvalidate | (inherited from Control)
protected method | OnActivated | (inherited from Form)
protected method | OnAutoSizeChanged | (inherited from Control)
protected method | OnAutoValidateChanged | (inherited from ContainerControl)
protected method | OnBackColorChanged | (inherited from Control)
protected method | OnBackgroundImageChanged | Overridden. (inherited from Control)
protected method | OnBackgroundImageLayoutChanged | Overridden. (inherited from Control)
protected method | OnBindingContextChanged | (inherited from Control)
protected method | OnCausesValidationChanged | (inherited from Control)
protected method | OnChangeUICues | (inherited from Control)
protected method | OnClick | (inherited from Control)
protected method | OnClientSizeChanged | (inherited from Control)
protected method | OnClosed | (inherited from Form)
protected method | OnClosing | (inherited from Form)
protected method | OnContextMenuChanged | (inherited from Control)
protected method | OnContextMenuStripChanged | (inherited from Control)
protected method | OnControlAdded | (inherited from Control)
protected method | OnControlRemoved | (inherited from Control)
protected method | OnCreateControl | Overridden. (inherited from ContainerControl)
protected method | OnCursorChanged | (inherited from Control)
protected method | OnDeactivate | (inherited from Form)
protected method | OnDockChanged | (inherited from Control)
protected method | OnDoubleClick | (inherited from Control)
protected method | OnDragDrop | (inherited from Control)
protected method | OnDragEnter | (inherited from Control)
protected method | OnDragLeave | (inherited from Control)
protected method | OnDragOver | (inherited from Control)
protected method | OnEnabledChanged | Overridden. (inherited from Control)
protected method | OnEnter | Overridden. (inherited from Control)
protected method | OnFontChanged | Overridden. (inherited from ContainerControl)
protected method | OnForeColorChanged | (inherited from Control)
protected method | OnFormClosed | (inherited from Form)
protected method | OnFormClosing | (inherited from Form)
protected method | OnGiveFeedback | (inherited from Control)
protected method | OnGotFocus | (inherited from Control)
protected method | OnHandleCreated | Overridden. (inherited from Control)
protected method | OnHandleDestroyed | Overridden. (inherited from Control)
protected method | OnHelpButtonClicked | (inherited from Form)
protected method | OnHelpRequested | (inherited from Control)
protected method | OnImeModeChanged | (inherited from Control)
protected method | OnInputLanguageChanged | (inherited from Form)
protected method | OnInputLanguageChanging | (inherited from Form)
protected method | OnInvalidated | (inherited from Control)
protected method | OnKeyDown | (inherited from Control)
protected method | OnKeyPress | (inherited from Control)
protected method | OnKeyUp | (inherited from Control)
protected method | OnLayout | Overridden. (inherited from ContainerControl)
protected method | OnLeave | (inherited from Control)
protected method | OnLoad | (inherited from Form)
protected method | OnLocationChanged | (inherited from Control)
protected method | OnLostFocus | (inherited from Control)
protected method | OnMarginChanged | (inherited from Control)
protected method | OnMaximizedBoundsChanged | (inherited from Form)
protected method | OnMaximumSizeChanged | (inherited from Form)
protected method | OnMdiChildActivate | (inherited from Form)
protected method | OnMenuComplete | (inherited from Form)
protected method | OnMenuStart | (inherited from Form)
protected method | OnMinimumSizeChanged | (inherited from Form)
protected method | OnMouseCaptureChanged | (inherited from Control)
protected method | OnMouseClick | (inherited from Control)
protected method | OnMouseDoubleClick | (inherited from Control)
protected method | OnMouseDown | (inherited from Control)
protected method | OnMouseEnter | (inherited from Control)
protected method | OnMouseHover | (inherited from Control)
protected method | OnMouseLeave | (inherited from Control)
protected method | OnMouseMove | (inherited from Control)
protected method | OnMouseUp | (inherited from Control)
protected method | OnMouseWheel | Overridden. (inherited from Control)
protected method | OnMove | (inherited from Control)
protected method | OnNotifyMessage | (inherited from Control)
protected method | OnPaddingChanged | Overridden. (inherited from Control)
protected method | OnPaint | Overridden. (inherited from Control)
protected method | OnPaintBackground | Overridden. (inherited from Control)
protected method | OnParentBackColorChanged | (inherited from Control)
protected method | OnParentBackgroundImageChanged | (inherited from Control)
protected method | OnParentBindingContextChanged | (inherited from Control)
protected method | OnParentChanged | Overridden. (inherited from Control)
protected method | OnParentCursorChanged | (inherited from Control)
protected method | OnParentEnabledChanged | (inherited from Control)
protected method | OnParentFontChanged | (inherited from Control)
protected method | OnParentForeColorChanged | (inherited from Control)
protected method | OnParentRightToLeftChanged | (inherited from Control)
protected method | OnParentVisibleChanged | (inherited from Control)
protected method | OnPreviewKeyDown | (inherited from Control)
protected method | OnPrint | (inherited from Control)
protected method | OnQueryContinueDrag | (inherited from Control)
protected method | OnRegionChanged | (inherited from Control)
protected method | OnResize | Overridden. (inherited from Control)
protected method | OnResizeBegin | (inherited from Form)
protected method | OnResizeEnd | (inherited from Form)
protected method | OnRightToLeftChanged | Overridden. (inherited from Control)
protected method | OnRightToLeftLayoutChanged | (inherited from Form)
protected method | OnScroll | (inherited from ScrollableControl)
protected method | OnShown | (inherited from Form)
protected method | OnSizeChanged | (inherited from Control)
protected method | OnStyleChanged | Overridden. (inherited from Control)
protected method | OnSystemColorsChanged | (inherited from Control)
protected method | OnTabIndexChanged | (inherited from Control)
protected method | OnTabStopChanged | (inherited from Control)
protected method | OnTextChanged | Overridden. (inherited from Control)
protected method | OnValidated | (inherited from Control)
protected method | OnValidating | (inherited from Control)
protected method | OnVisibleChanged | Overridden. (inherited from ScrollableControl)
protected method | ProcessCmdKey | Overridden. (inherited from ContainerControl)
protected method | ProcessDialogChar | Overridden. (inherited from ContainerControl)
protected method | ProcessDialogKey | Overridden. (inherited from ContainerControl)
protected method | ProcessKeyEventArgs | (inherited from Control)
protected method | ProcessKeyPreview | Overridden. (inherited from Control)
protected method | ProcessTabKey | Overridden. (inherited from ContainerControl)
protected method | RaiseDragEvent | (inherited from Control)
protected method | RaiseKeyEvent | (inherited from Control)
protected method | RaiseMouseEvent | (inherited from Control)
protected method | RaisePaintEvent | (inherited from Control)
protected method | RecreateHandle | (inherited from Control)
protected method | ResetMouseEventArgs | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateHorizontal | (inherited from Control)
protected method | RtlTranslateLeftRight | (inherited from Control)
protected method | ScaleControl | Overridden. (inherited from ScrollableControl)
protected method | ScaleCore | Overridden. (inherited from ScrollableControl)
protected method | ScrollToControl | (inherited from ScrollableControl)
protected method | Select | Overridden. (inherited from ContainerControl)
protected method | SetAutoSizeMode | (inherited from Control)
protected method | SetBoundsCore | Overridden. (inherited from Control)
protected method | SetClientSizeCore | Overridden. (inherited from Control)
protected method | SetDisplayRectLocation | (inherited from ScrollableControl)
protected method | SetScrollState | (inherited from ScrollableControl)
protected method | SetStyle | (inherited from Control)
protected method | SetTopLevel | (inherited from Control)
protected method | SetVisibleCore | Overridden. (inherited from Control)
protected method | SizeFromClientSize | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateDefaultButton | Overridden. (inherited from ContainerControl)
protected method | UpdateStyles | (inherited from Control)
protected method | UpdateZOrder | (inherited from Control)
protected method | WndProc | Overridden. (inherited from ContainerControl)
Top

Public Events

 | Name | Description
public event | Activated | (inherited from Form)
public event | AutoSizeChanged | (inherited from Form)
public event | AutoValidateChanged | (inherited from Form)
public event | BackColorChanged | (inherited from Control)
public event | BackgroundImageChanged | (inherited from Control)
public event | BackgroundImageLayoutChanged | (inherited from Control)
public event | BindingContextChanged | (inherited from Control)
public event | CausesValidationChanged | (inherited from Control)
public event | ChangeUICues | (inherited from Control)
public event | Click | (inherited from Control)
public event | ClientSizeChanged | (inherited from Control)
public event | Closed | (inherited from Form)
public event | Closing | (inherited from Form)
public event | ContextMenuChanged | (inherited from Control)
public event | ContextMenuStripChanged | (inherited from Control)
public event | ControlAdded | (inherited from Control)
public event | ControlRemoved | (inherited from Control)
public event | CursorChanged | (inherited from Control)
public event | Deactivate | (inherited from Form)
public event | Disposed | (inherited from Component)
public event | DockChanged | (inherited from Control)
public event | DoubleClick | (inherited from Control)
public event | DragDrop | (inherited from Control)
public event | DragEnter | (inherited from Control)
public event | DragLeave | (inherited from Control)
public event | DragOver | (inherited from Control)
public event | EnabledChanged | (inherited from Control)
public event | Enter | (inherited from Control)
public event | FontChanged | (inherited from Control)
public event | ForeColorChanged | (inherited from Control)
public event | FormClosed | (inherited from Form)
public event | FormClosing | (inherited from Form)
public event | GiveFeedback | (inherited from Control)
public event | GotFocus | (inherited from Control)
public event | HandleCreated | (inherited from Control)
public event | HandleDestroyed | (inherited from Control)
public event | HelpButtonClicked | (inherited from Form)
public event | HelpRequested | (inherited from Control)
public event | ImeModeChanged | (inherited from Control)
public event | InputLanguageChanged | (inherited from Form)
public event | InputLanguageChanging | (inherited from Form)
public event | Invalidated | (inherited from Control)
public event | KeyDown | (inherited from Control)
public event | KeyPress | (inherited from Control)
public event | KeyUp | (inherited from Control)
public event | Layout | (inherited from Control)
public event | Leave | (inherited from Control)
public event | Load | (inherited from Form)
public event | LocationChanged | (inherited from Control)
public event | LostFocus | (inherited from Control)
public event | MarginChanged | (inherited from Form)
public event | MaximizedBoundsChanged | (inherited from Form)
public event | MaximumSizeChanged | (inherited from Form)
public event | MdiChildActivate | (inherited from Form)
public event | MenuComplete | (inherited from Form)
public event | MenuStart | (inherited from Form)
public event | MinimumSizeChanged | (inherited from Form)
public event | MouseCaptureChanged | (inherited from Control)
public event | MouseClick | (inherited from Control)
public event | MouseDoubleClick | (inherited from Control)
public event | MouseDown | (inherited from Control)
public event | MouseEnter | (inherited from Control)
public event | MouseHover | (inherited from Control)
public event | MouseLeave | (inherited from Control)
public event | MouseMove | (inherited from Control)
public event | MouseUp | (inherited from Control)
public event | MouseWheel | (inherited from Control)
public event | Move | (inherited from Control)
public event | PaddingChanged | (inherited from Control)
public event | Paint | (inherited from Control)
public event | ParentChanged | (inherited from Control)
public event | PreviewKeyDown | (inherited from Control)
public event | QueryAccessibilityHelp | (inherited from Control)
public event | QueryContinueDrag | (inherited from Control)
public event | RegionChanged | (inherited from Control)
public event | Resize | (inherited from Control)
public event | ResizeBegin | (inherited from Form)
public event | ResizeEnd | (inherited from Form)
public event | RightToLeftChanged | (inherited from Control)
public event | RightToLeftLayoutChanged | (inherited from Form)
public event | Scroll | (inherited from ScrollableControl)
public event | Shown | (inherited from Form)
public event | SizeChanged | (inherited from Control)
public event | StyleChanged | (inherited from Control)
public event | SystemColorsChanged | (inherited from Control)
public event | TabIndexChanged | (inherited from Form)
public event | TabStopChanged | (inherited from Form)
public event | TextChanged | (inherited from Control)
public event | Validated | (inherited from Control)
public event | Validating | (inherited from Control)
public event | VisibleChanged | (inherited from Control)
Top

Explicit Interface Implementations

Name | Description
ActivateControl | (inherited from ContainerControl)
OnDragDrop | (inherited from Control)
OnDragEnter | (inherited from Control)
OnDragLeave | (inherited from Control)
OnDragOver | (inherited from Control)
Top

See Also

Reference

ExceptionForm Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ExceptionForm Constructor
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim mainMessage As String
Dim exception As Exception

Dim instance As New ExceptionForm(mainMessage, exception)

Syntax

Visual Basic
Public Sub New ( _
    mainMessage As String, _
    exception As Exception _
)
C#
public ExceptionForm (
    string mainMessage,
    Exception exception
)
C++
public:
ExceptionForm (
    String^ mainMessage,
    Exception^ exception
)
J#
public ExceptionForm (
    String mainMessage,
    Exception exception
)
JScript
public function ExceptionForm (
    mainMessage : String,
    exception : Exception
)

Parameters

mainMessage
exception

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ExceptionForm Class
ExceptionForm Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ExceptionForm Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Activate | (inherited from Form)
public method | AddOwnedForm | (inherited from Form)
public method | BeginInvoke | (inherited from Control)
public method | BeginInvoke | (inherited from Control)
public method | BringToFront | (inherited from Control)
public method | Close | (inherited from Form)
public method | Contains | (inherited from Control)
public method | CreateControl | (inherited from Control)
public method | CreateGraphics | (inherited from Control)
public method | CreateObjRef | (inherited from MarshalByRefObject)
public method | Dispose | (inherited from Component)
public method | DoDragDrop | (inherited from Control)
public method | DrawToBitmap | (inherited from Control)
public method | EndInvoke | (inherited from Control)
public method | Equals | (inherited from Object)
public method | FindForm | (inherited from Control)
public method | Focus | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetContainerControl | (inherited from Control)
public method | GetHashCode | (inherited from Object)
public method | GetLifetimeService | (inherited from MarshalByRefObject)
public method | GetNextControl | (inherited from Control)
public method | GetPreferredSize | (inherited from Control)
public method | GetType | (inherited from Object)
public method | Hide | (inherited from Control)
public method | InitializeLifetimeService | (inherited from MarshalByRefObject)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | LayoutMdi | (inherited from Form)
public method | PerformAutoScale | (inherited from ContainerControl)
public method | PerformLayout | (inherited from Control)
public method | PerformLayout | (inherited from Control)
public method | PointToClient | (inherited from Control)
public method | PointToScreen | (inherited from Control)
public method | PreProcessControlMessage | (inherited from Control)
public method | PreProcessMessage | (inherited from Control)
public method | RectangleToClient | (inherited from Control)
public method | RectangleToScreen | (inherited from Control)
public method | Refresh | (inherited from Control)
public method | RemoveOwnedForm | (inherited from Form)
public method | ResetBackColor | (inherited from Control)
public method | ResetBindings | (inherited from Control)
public method | ResetCursor | (inherited from Control)
public method | ResetFont | (inherited from Control)
public method | ResetForeColor | (inherited from Control)
public method | ResetImeMode | (inherited from Control)
public method | ResetRightToLeft | (inherited from Control)
public method | ResetText | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | Scale | (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | ScrollControlIntoView | (inherited from ScrollableControl)
public method | Select | (inherited from Control)
public method | SelectNextControl | (inherited from Control)
public method | SendToBack | (inherited from Control)
public method | SetAutoScrollMargin | (inherited from ScrollableControl)
public method | SetBounds | (inherited from Control)
public method | SetBounds | (inherited from Control)
public method | SetDesktopBounds | (inherited from Form)
public method | SetDesktopLocation | (inherited from Form)
public method | Show | (inherited from Control)
public method | Show | (inherited from Form)
public method | ShowDialog | (inherited from Form)
public method | ShowDialog | (inherited from Form)
public method | SuspendLayout | (inherited from Control)
public method | ToString | Overridden. (inherited from Component)
public method | Update | (inherited from Control)
public method | Validate | (inherited from ContainerControl)
public method | Validate | (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)

Protected Methods

 | Name | Description
protected method | AccessibilityNotifyClients | (inherited from Control)
protected method | ActivateMdiChild | (inherited from Form)
protected method | AdjustFormScrollbars | Overridden. (inherited from ContainerControl)
protected method | ApplyAutoScaling | Obsolete. (inherited from Form)
protected method | CenterToParent | (inherited from Form)
protected method | CenterToScreen | (inherited from Form)
protected method | CreateAccessibilityInstance | (inherited from Control)
protected method | CreateControlsInstance | Overridden. (inherited from Control)
protected method | CreateHandle | Overridden. (inherited from Control)
protected method | DefWndProc | Overridden. (inherited from Control)
protected method | DestroyHandle | (inherited from Control)
protected method | Dispose | Overridden.
protected method | Finalize | Overridden. (inherited from Object)
protected method | GetAccessibilityObjectById | (inherited from Control)
protected method | GetAutoSizeMode | (inherited from Control)
protected method | GetScaledBounds | Overridden. (inherited from Control)
protected method | GetScrollState | (inherited from ScrollableControl)
protected method | GetService | (inherited from Component)
protected method | GetStyle | (inherited from Control)
protected method | GetTopLevel | (inherited from Control)
protected method | InitLayout | (inherited from Control)
protected method | InvokeGotFocus | (inherited from Control)
protected method | InvokeLostFocus | (inherited from Control)
protected method | InvokeOnClick | (inherited from Control)
protected method | InvokePaint | (inherited from Control)
protected method | InvokePaintBackground | (inherited from Control)
protected method | IsInputChar | (inherited from Control)
protected method | IsInputKey | (inherited from Control)
protected method | MemberwiseClone | (inherited from MarshalByRefObject)
protected method | MemberwiseClone | (inherited from Object)
protected method | NotifyInvalidate | (inherited from Control)
protected method | OnActivated | (inherited from Form)
protected method | OnAutoSizeChanged | (inherited from Control)
protected method | OnAutoValidateChanged | (inherited from ContainerControl)
protected method | OnBackColorChanged | (inherited from Control)
protected method | OnBackgroundImageChanged | Overridden. (inherited from Control)
protected method | OnBackgroundImageLayoutChanged | Overridden. (inherited from Control)
protected method | OnBindingContextChanged | (inherited from Control)
protected method | OnCausesValidationChanged | (inherited from Control)
protected method | OnChangeUICues | (inherited from Control)
protected method | OnClick | (inherited from Control)
protected method | OnClientSizeChanged | (inherited from Control)
protected method | OnClosed | (inherited from Form)
protected method | OnClosing | (inherited from Form)
protected method | OnContextMenuChanged | (inherited from Control)
protected method | OnContextMenuStripChanged | (inherited from Control)
protected method | OnControlAdded | (inherited from Control)
protected method | OnControlRemoved | (inherited from Control)
protected method | OnCreateControl | Overridden. (inherited from ContainerControl)
protected method | OnCursorChanged | (inherited from Control)
protected method | OnDeactivate | (inherited from Form)
protected method | OnDockChanged | (inherited from Control)
protected method | OnDoubleClick | (inherited from Control)
protected method | OnDragDrop | (inherited from Control)
protected method | OnDragEnter | (inherited from Control)
protected method | OnDragLeave | (inherited from Control)
protected method | OnDragOver | (inherited from Control)
protected method | OnEnabledChanged | Overridden. (inherited from Control)
protected method | OnEnter | Overridden. (inherited from Control)
protected method | OnFontChanged | Overridden. (inherited from ContainerControl)
protected method | OnForeColorChanged | (inherited from Control)
protected method | OnFormClosed | (inherited from Form)
protected method | OnFormClosing | (inherited from Form)
protected method | OnGiveFeedback | (inherited from Control)
protected method | OnGotFocus | (inherited from Control)
protected method | OnHandleCreated | Overridden. (inherited from Control)
protected method | OnHandleDestroyed | Overridden. (inherited from Control)
protected method | OnHelpButtonClicked | (inherited from Form)
protected method | OnHelpRequested | (inherited from Control)
protected method | OnImeModeChanged | (inherited from Control)
protected method | OnInputLanguageChanged | (inherited from Form)
protected method | OnInputLanguageChanging | (inherited from Form)
protected method | OnInvalidated | (inherited from Control)
protected method | OnKeyDown | (inherited from Control)
protected method | OnKeyPress | (inherited from Control)
protected method | OnKeyUp | (inherited from Control)
protected method | OnLayout | Overridden. (inherited from ContainerControl)
protected method | OnLeave | (inherited from Control)
protected method | OnLoad | (inherited from Form)
protected method | OnLocationChanged | (inherited from Control)
protected method | OnLostFocus | (inherited from Control)
protected method | OnMarginChanged | (inherited from Control)
protected method | OnMaximizedBoundsChanged | (inherited from Form)
protected method | OnMaximumSizeChanged | (inherited from Form)
protected method | OnMdiChildActivate | (inherited from Form)
protected method | OnMenuComplete | (inherited from Form)
protected method | OnMenuStart | (inherited from Form)
protected method | OnMinimumSizeChanged | (inherited from Form)
protected method | OnMouseCaptureChanged | (inherited from Control)
protected method | OnMouseClick | (inherited from Control)
protected method | OnMouseDoubleClick | (inherited from Control)
protected method | OnMouseDown | (inherited from Control)
protected method | OnMouseEnter | (inherited from Control)
protected method | OnMouseHover | (inherited from Control)
protected method | OnMouseLeave | (inherited from Control)
protected method | OnMouseMove | (inherited from Control)
protected method | OnMouseUp | (inherited from Control)
protected method | OnMouseWheel | Overridden. (inherited from Control)
protected method | OnMove | (inherited from Control)
protected method | OnNotifyMessage | (inherited from Control)
protected method | OnPaddingChanged | Overridden. (inherited from Control)
protected method | OnPaint | Overridden. (inherited from Control)
protected method | OnPaintBackground | Overridden. (inherited from Control)
protected method | OnParentBackColorChanged | (inherited from Control)
protected method | OnParentBackgroundImageChanged | (inherited from Control)
protected method | OnParentBindingContextChanged | (inherited from Control)
protected method | OnParentChanged | Overridden. (inherited from Control)
protected method | OnParentCursorChanged | (inherited from Control)
protected method | OnParentEnabledChanged | (inherited from Control)
protected method | OnParentFontChanged | (inherited from Control)
protected method | OnParentForeColorChanged | (inherited from Control)
protected method | OnParentRightToLeftChanged | (inherited from Control)
protected method | OnParentVisibleChanged | (inherited from Control)
protected method | OnPreviewKeyDown | (inherited from Control)
protected method | OnPrint | (inherited from Control)
protected method | OnQueryContinueDrag | (inherited from Control)
protected method | OnRegionChanged | (inherited from Control)
protected method | OnResize | Overridden. (inherited from Control)
protected method | OnResizeBegin | (inherited from Form)
protected method | OnResizeEnd | (inherited from Form)
protected method | OnRightToLeftChanged | Overridden. (inherited from Control)
protected method | OnRightToLeftLayoutChanged | (inherited from Form)
protected method | OnScroll | (inherited from ScrollableControl)
protected method | OnShown | (inherited from Form)
protected method | OnSizeChanged | (inherited from Control)
protected method | OnStyleChanged | Overridden. (inherited from Control)
protected method | OnSystemColorsChanged | (inherited from Control)
protected method | OnTabIndexChanged | (inherited from Control)
protected method | OnTabStopChanged | (inherited from Control)
protected method | OnTextChanged | Overridden. (inherited from Control)
protected method | OnValidated | (inherited from Control)
protected method | OnValidating | (inherited from Control)
protected method | OnVisibleChanged | Overridden. (inherited from ScrollableControl)
protected method | ProcessCmdKey | Overridden. (inherited from ContainerControl)
protected method | ProcessDialogChar | Overridden. (inherited from ContainerControl)
protected method | ProcessDialogKey | Overridden. (inherited from ContainerControl)
protected method | ProcessKeyEventArgs | (inherited from Control)
protected method | ProcessKeyPreview | Overridden. (inherited from Control)
protected method | ProcessTabKey | Overridden. (inherited from ContainerControl)
protected method | RaiseDragEvent | (inherited from Control)
protected method | RaiseKeyEvent | (inherited from Control)
protected method | RaiseMouseEvent | (inherited from Control)
protected method | RaisePaintEvent | (inherited from Control)
protected method | RecreateHandle | (inherited from Control)
protected method | ResetMouseEventArgs | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateHorizontal | (inherited from Control)
protected method | RtlTranslateLeftRight | (inherited from Control)
protected method | ScaleControl | Overridden. (inherited from ScrollableControl)
protected method | ScaleCore | Overridden. (inherited from ScrollableControl)
protected method | ScrollToControl | (inherited from ScrollableControl)
protected method | Select | Overridden. (inherited from ContainerControl)
protected method | SetAutoSizeMode | (inherited from Control)
protected method | SetBoundsCore | Overridden. (inherited from Control)
protected method | SetClientSizeCore | Overridden. (inherited from Control)
protected method | SetDisplayRectLocation | (inherited from ScrollableControl)
protected method | SetScrollState | (inherited from ScrollableControl)
protected method | SetStyle | (inherited from Control)
protected method | SetTopLevel | (inherited from Control)
protected method | SetVisibleCore | Overridden. (inherited from Control)
protected method | SizeFromClientSize | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateDefaultButton | Overridden. (inherited from ContainerControl)
protected method | UpdateStyles | (inherited from Control)
protected method | UpdateZOrder | (inherited from Control)
protected method | WndProc | Overridden. (inherited from ContainerControl)

Explicit Interface Implementations

Name | Description
ActivateControl | (inherited from ContainerControl)
OnDragDrop | (inherited from Control)
OnDragEnter | (inherited from Control)
OnDragLeave | (inherited from Control)
OnDragOver | (inherited from Control)

See Also

Reference

ExceptionForm Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ExceptionForm.Dispose Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim disposing As Boolean

Me.Dispose(disposing)

Syntax

Visual Basic
Protected Overrides Sub Dispose ( _
    disposing As Boolean _
)
C#
protected override void Dispose (
    bool disposing
)
C++
protected:
virtual void Dispose (
    bool disposing
) override
J#
protected void Dispose (
    boolean disposing
)
JScript
protected override function Dispose (
    disposing : boolean
)

Parameters

disposing

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

ExceptionForm Class
ExceptionForm Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ExceptionForm Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | AcceptButton | (inherited from Form)
public property | AccessibilityObject | (inherited from Control)
public property | AccessibleDefaultActionDescription | (inherited from Control)
public property | AccessibleDescription | (inherited from Control)
public property | AccessibleName | (inherited from Control)
public property | AccessibleRole | (inherited from Control)
public property | ActiveControl | (inherited from ContainerControl)
public property | ActiveMdiChild | (inherited from Form)
public property | AllowDrop | (inherited from Control)
public property | AllowTransparency | (inherited from Form)
public property | Anchor | (inherited from Control)
public property | AutoScale | Obsolete. (inherited from Form)
public property | AutoScaleBaseSize | (inherited from Form)
public property | AutoScaleDimensions | (inherited from ContainerControl)
public property | AutoScaleMode | (inherited from ContainerControl)
public property | AutoScroll | Overridden. (inherited from ScrollableControl)
public property | AutoScrollMargin | (inherited from ScrollableControl)
public property | AutoScrollMinSize | (inherited from ScrollableControl)
public property | AutoScrollOffset | (inherited from Control)
public property | AutoScrollPosition | (inherited from ScrollableControl)
public property | AutoSize | Overridden. (inherited from Control)
public property | AutoSizeMode | (inherited from Form)
public property | AutoValidate | Overridden. (inherited from ContainerControl)
public property | BackColor | Overridden. (inherited from Control)
public property | BackgroundImage | (inherited from Control)
public property | BackgroundImageLayout | (inherited from Control)
public property | BindingContext | Overridden. (inherited from Control)
public property | Bottom | (inherited from Control)
public property | Bounds | (inherited from Control)
public property | CancelButton | (inherited from Form)
public property | CanFocus | (inherited from Control)
public property | CanSelect | (inherited from Control)
public property | Capture | (inherited from Control)
public property | CausesValidation | (inherited from Control)
public property | ClientRectangle | (inherited from Control)
public property | ClientSize | (inherited from Form)
public property | CompanyName | (inherited from Control)
public property | Container | (inherited from Component)
public property | ContainsFocus | (inherited from Control)
public property | ContextMenu | (inherited from Control)
public property | ContextMenuStrip | (inherited from Control)
public property | ControlBox | (inherited from Form)
public property | Controls | (inherited from Control)
public property | Created | (inherited from Control)
public property | CurrentAutoScaleDimensions | (inherited from ContainerControl)
public property | Cursor | (inherited from Control)
public property | DataBindings | (inherited from Control)
public property | DesktopBounds | (inherited from Form)
public property | DesktopLocation | (inherited from Form)
public property | DialogResult | (inherited from Form)
public property | DisplayRectangle | Overridden. (inherited from Control)
public property | Disposing | (inherited from Control)
public property | Dock | (inherited from Control)
public property | DockPadding | (inherited from ScrollableControl)
public property | Enabled | (inherited from Control)
public property | Focused | (inherited from Control)
public property | Font | (inherited from Control)
public property | ForeColor | (inherited from Control)
public property | FormBorderStyle | (inherited from Form)
public property | Handle | (inherited from Control)
public property | HasChildren | (inherited from Control)
public property | Height | (inherited from Control)
public property | HelpButton | (inherited from Form)
public property | HorizontalScroll | (inherited from ScrollableControl)
public property | Icon | (inherited from Form)
public property | ImeMode | (inherited from Control)
public property | InvokeRequired | (inherited from Control)
public property | IsAccessible | (inherited from Control)
public property | IsDisposed | (inherited from Control)
public property | IsHandleCreated | (inherited from Control)
public property | IsMdiChild | (inherited from Form)
public property | IsMdiContainer | (inherited from Form)
public property | IsMirrored | (inherited from Control)
public property | IsRestrictedWindow | (inherited from Form)
public property | KeyPreview | (inherited from Form)
public property | LayoutEngine | (inherited from Control)
public property | Left | (inherited from Control)
public property | Location | (inherited from Form)
public property | MainMenuStrip | (inherited from Form)
public property | Margin | (inherited from Form)
public property | MaximizeBox | (inherited from Form)
public property | MaximumSize | Overridden. (inherited from Control)
public property | MdiChildren | (inherited from Form)
public property | MdiParent | (inherited from Form)
public property | Menu | (inherited from Form)
public property | MergedMenu | (inherited from Form)
public property | MinimizeBox | (inherited from Form)
public property | MinimumSize | Overridden. (inherited from Control)
public property | Modal | (inherited from Form)
public property | Name | (inherited from Control)
public property | Opacity | (inherited from Form)
public property | OwnedForms | (inherited from Form)
public property | Owner | (inherited from Form)
public property | Padding | (inherited from Control)
public property | Parent | (inherited from Control)
public property | ParentForm | (inherited from ContainerControl)
public property | PreferredSize | (inherited from Control)
public property | ProductName | (inherited from Control)
public property | ProductVersion | (inherited from Control)
public property | RecreatingHandle | (inherited from Control)
public property | Region | (inherited from Control)
public property | RestoreBounds | (inherited from Form)
public property | Right | (inherited from Control)
public property | RightToLeft | (inherited from Control)
public property | RightToLeftLayout | (inherited from Form)
public property | ShowIcon | (inherited from Form)
public property | ShowInTaskbar | (inherited from Form)
public property | Site | Overridden. (inherited from Component)
public property | Size | (inherited from Form)
public property | SizeGripStyle | (inherited from Form)
public property | StartPosition | (inherited from Form)
public property | TabIndex | (inherited from Form)
public property | TabStop | (inherited from Form)
public property | Tag | (inherited from Control)
public property | Text | Overridden. (inherited from Control)
public property | Top | (inherited from Control)
public property | TopLevel | (inherited from Form)
public property | TopLevelControl | (inherited from Control)
public property | TopMost | (inherited from Form)
public property | TransparencyKey | (inherited from Form)
public property | UseWaitCursor | (inherited from Control)
public property | VerticalScroll | (inherited from ScrollableControl)
public property | Visible | (inherited from Control)
public property | Width | (inherited from Control)
public property | WindowState | (inherited from Form)
public property | WindowTarget | (inherited from Control)

Protected Properties

 | Name | Description
protected property | AutoScaleFactor | (inherited from ContainerControl)
protected property | CanRaiseEvents | Overridden. (inherited from Component)
protected property | CreateParams | Overridden. (inherited from ContainerControl)
protected property | DefaultCursor | (inherited from Control)
protected property | DefaultImeMode | Overridden. (inherited from Control)
protected property | DefaultMargin | (inherited from Control)
protected property | DefaultMaximumSize | (inherited from Control)
protected property | DefaultMinimumSize | (inherited from Control)
protected property | DefaultPadding | (inherited from Control)
protected property | DefaultSize | Overridden. (inherited from Control)
protected property | DesignMode | (inherited from Component)
protected property | DoubleBuffered | (inherited from Control)
protected property | Events | (inherited from Component)
protected property | FontHeight | (inherited from Control)
protected property | HScroll | (inherited from ScrollableControl)
protected property | MaximizedBounds | (inherited from Form)
protected property | ResizeRedraw | (inherited from Control)
protected property | ScaleChildren | (inherited from Control)
protected property | ShowWithoutActivation | (inherited from Form)
protected property | VScroll | (inherited from ScrollableControl)

See Also

Reference

ExceptionForm Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


ExceptionForm Events
[image]

Public Events

 | Name | Description
public event | Activated | (inherited from Form)
public event | AutoSizeChanged | (inherited from Form)
public event | AutoValidateChanged | (inherited from Form)
public event | BackColorChanged | (inherited from Control)
public event | BackgroundImageChanged | (inherited from Control)
public event | BackgroundImageLayoutChanged | (inherited from Control)
public event | BindingContextChanged | (inherited from Control)
public event | CausesValidationChanged | (inherited from Control)
public event | ChangeUICues | (inherited from Control)
public event | Click | (inherited from Control)
public event | ClientSizeChanged | (inherited from Control)
public event | Closed | (inherited from Form)
public event | Closing | (inherited from Form)
public event | ContextMenuChanged | (inherited from Control)
public event | ContextMenuStripChanged | (inherited from Control)
public event | ControlAdded | (inherited from Control)
public event | ControlRemoved | (inherited from Control)
public event | CursorChanged | (inherited from Control)
public event | Deactivate | (inherited from Form)
public event | Disposed | (inherited from Component)
public event | DockChanged | (inherited from Control)
public event | DoubleClick | (inherited from Control)
public event | DragDrop | (inherited from Control)
public event | DragEnter | (inherited from Control)
public event | DragLeave | (inherited from Control)
public event | DragOver | (inherited from Control)
public event | EnabledChanged | (inherited from Control)
public event | Enter | (inherited from Control)
public event | FontChanged | (inherited from Control)
public event | ForeColorChanged | (inherited from Control)
public event | FormClosed | (inherited from Form)
public event | FormClosing | (inherited from Form)
public event | GiveFeedback | (inherited from Control)
public event | GotFocus | (inherited from Control)
public event | HandleCreated | (inherited from Control)
public event | HandleDestroyed | (inherited from Control)
public event | HelpButtonClicked | (inherited from Form)
public event | HelpRequested | (inherited from Control)
public event | ImeModeChanged | (inherited from Control)
public event | InputLanguageChanged | (inherited from Form)
public event | InputLanguageChanging | (inherited from Form)
public event | Invalidated | (inherited from Control)
public event | KeyDown | (inherited from Control)
public event | KeyPress | (inherited from Control)
public event | KeyUp | (inherited from Control)
public event | Layout | (inherited from Control)
public event | Leave | (inherited from Control)
public event | Load | (inherited from Form)
public event | LocationChanged | (inherited from Control)
public event | LostFocus | (inherited from Control)
public event | MarginChanged | (inherited from Form)
public event | MaximizedBoundsChanged | (inherited from Form)
public event | MaximumSizeChanged | (inherited from Form)
public event | MdiChildActivate | (inherited from Form)
public event | MenuComplete | (inherited from Form)
public event | MenuStart | (inherited from Form)
public event | MinimumSizeChanged | (inherited from Form)
public event | MouseCaptureChanged | (inherited from Control)
public event | MouseClick | (inherited from Control)
public event | MouseDoubleClick | (inherited from Control)
public event | MouseDown | (inherited from Control)
public event | MouseEnter | (inherited from Control)
public event | MouseHover | (inherited from Control)
public event | MouseLeave | (inherited from Control)
public event | MouseMove | (inherited from Control)
public event | MouseUp | (inherited from Control)
public event | MouseWheel | (inherited from Control)
public event | Move | (inherited from Control)
public event | PaddingChanged | (inherited from Control)
public event | Paint | (inherited from Control)
public event | ParentChanged | (inherited from Control)
public event | PreviewKeyDown | (inherited from Control)
public event | QueryAccessibilityHelp | (inherited from Control)
public event | QueryContinueDrag | (inherited from Control)
public event | RegionChanged | (inherited from Control)
public event | Resize | (inherited from Control)
public event | ResizeBegin | (inherited from Form)
public event | ResizeEnd | (inherited from Form)
public event | RightToLeftChanged | (inherited from Control)
public event | RightToLeftLayoutChanged | (inherited from Form)
public event | Scroll | (inherited from ScrollableControl)
public event | Shown | (inherited from Form)
public event | SizeChanged | (inherited from Control)
public event | StyleChanged | (inherited from Control)
public event | SystemColorsChanged | (inherited from Control)
public event | TabIndexChanged | (inherited from Form)
public event | TabStopChanged | (inherited from Form)
public event | TextChanged | (inherited from Control)
public event | Validated | (inherited from Control)
public event | Validating | (inherited from Control)
public event | VisibleChanged | (inherited from Control)

See Also

Reference

ExceptionForm Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


InvokedFrom Enumeration
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As InvokedFrom

Syntax

Visual Basic
Public Enumeration InvokedFrom
C#
public enum InvokedFrom
C++
public enum class InvokedFrom
J#
public enum InvokedFrom
JScript
public enum InvokedFrom

Members

Member name | Description
FromAddAdapterServiceReference |
FromConsumeAdapter |
FromTemplate |

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataOperationsChangedEventArgs Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataOperationsChangedEventArgs

Syntax

Visual Basic
Public NotInheritable Class MetadataOperationsChangedEventArgs
    Inherits EventArgs
C#
public sealed class MetadataOperationsChangedEventArgs : EventArgs
C++
public ref class MetadataOperationsChangedEventArgs sealed : public EventArgs
J#
public final class MetadataOperationsChangedEventArgs extends EventArgs
JScript
public final class MetadataOperationsChangedEventArgs extends EventArgs

Inheritance Hierarchy

System.Object
System.EventArgs
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.MetadataOperationsChangedEventArgs

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataOperationsChangedEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataOperationsChangedEventArgs Members
See Also Constructors Methods Properties
[image]

The following tables list the members exposed by the MetadataOperationsChangedEventArgs type.

Public Constructors

Name | Description
MetadataOperationsChangedEventArgs |
Top

Public Properties

 | Name | Description
public property | MetadataOperations |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

MetadataOperationsChangedEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataOperationsChangedEventArgs Constructor
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim operations As MetadataRetrievalNode()

Dim instance As New MetadataOperationsChangedEventArgs(operations)

Syntax

Visual Basic
Public Sub New ( _
    operations As MetadataRetrievalNode() _
)
C#
public MetadataOperationsChangedEventArgs (
    MetadataRetrievalNode[] operations
)
C++
public:
MetadataOperationsChangedEventArgs (
    array<MetadataRetrievalNode^>^ operations
)
J#
public MetadataOperationsChangedEventArgs (
    MetadataRetrievalNode[] operations
)
JScript
public function MetadataOperationsChangedEventArgs (
    operations : MetadataRetrievalNode[]
)

Parameters

operations

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataOperationsChangedEventArgs Class
MetadataOperationsChangedEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataOperationsChangedEventArgs Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

MetadataOperationsChangedEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataOperationsChangedEventArgs Properties
[image]

Public Properties

 | Name | Description
public property | MetadataOperations |

See Also

Reference

MetadataOperationsChangedEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataOperationsChangedEventArgs.MetadataOperations Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataOperationsChangedEventArgs
Dim value As MetadataRetrievalNode()

value = instance.MetadataOperations

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")> _
Public ReadOnly Property MetadataOperations As MetadataRetrievalNode()
C#
[SuppressMessageAttribute("Microsoft.Performance", "CA1819:PropertiesShouldNotReturnArrays")]
public MetadataRetrievalNode[] MetadataOperations { get; }
C++
[SuppressMessageAttribute(L"Microsoft.Performance", L"CA1819:PropertiesShouldNotReturnArrays")]
public:
property array<MetadataRetrievalNode^>^ MetadataOperations {
    array<MetadataRetrievalNode^>^ get ();
}
J#
/** @property */
public MetadataRetrievalNode[] get_MetadataOperations ()
JScript
public function get MetadataOperations () : MetadataRetrievalNode[]

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataOperationsChangedEventArgs Class
MetadataOperationsChangedEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl

Syntax

Visual Basic
Public Class MetadataUserControl
    Inherits UserControl
C#
public class MetadataUserControl : UserControl
C++
public ref class MetadataUserControl : public UserControl
J#
public class MetadataUserControl extends UserControl
JScript
public class MetadataUserControl extends UserControl

Inheritance Hierarchy

System.Object
System.MarshalByRefObject
System.ComponentModel.Component
System.Windows.Forms.Control
System.Windows.Forms.ScrollableControl
System.Windows.Forms.ContainerControl
System.Windows.Forms.UserControl
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.MetadataUserControl

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Members
See Also Constructors Events Methods Properties Explicit Interface Implementations
[image]

The following tables list the members exposed by the MetadataUserControl type.

Public Constructors

Name | Description
MetadataUserControl | Overloaded.
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | AccessibilityObject | (inherited from Control)
public property | AccessibleDefaultActionDescription | (inherited from Control)
public property | AccessibleDescription | (inherited from Control)
public property | AccessibleName | (inherited from Control)
public property | AccessibleRole | (inherited from Control)
public property | ActiveControl | (inherited from ContainerControl)
public property | Adapter |
public property | AllowDrop | (inherited from Control)
public property | Anchor | (inherited from Control)
public property | AutoScaleDimensions | (inherited from ContainerControl)
public property | AutoScaleMode | (inherited from ContainerControl)
public property | AutoScroll | (inherited from ScrollableControl)
public property | AutoScrollMargin | (inherited from ScrollableControl)
public property | AutoScrollMinSize | (inherited from ScrollableControl)
public property | AutoScrollOffset | (inherited from Control)
public property | AutoScrollPosition | (inherited from ScrollableControl)
public property | AutoSize | Overridden. (inherited from Control)
public property | AutoSizeMode | (inherited from UserControl)
public property | AutoValidate | Overridden. (inherited from ContainerControl)
public property | BackColor | (inherited from Control)
public property | BackgroundImage | (inherited from Control)
public property | BackgroundImageLayout | (inherited from Control)
public property | BindingContext | Overridden. (inherited from Control)
public property | BorderStyle | (inherited from UserControl)
public property | Bottom | (inherited from Control)
public property | Bounds | (inherited from Control)
public property | CanFocus | (inherited from Control)
public property | CanSelect | (inherited from Control)
public property | Capture | (inherited from Control)
public property | CausesValidation | (inherited from Control)
public property | ClientRectangle | (inherited from Control)
public property | ClientSize | (inherited from Control)
public property | CompanyName | (inherited from Control)
public property | Container | (inherited from Component)
public property | ContainsFocus | (inherited from Control)
public property | ContextMenu | (inherited from Control)
public property | ContextMenuStrip | (inherited from Control)
public property | Controls | (inherited from Control)
public property | Created | (inherited from Control)
public property | CurrentAutoScaleDimensions | (inherited from ContainerControl)
public property | Cursor | (inherited from Control)
public property | DataBindings | (inherited from Control)
public property | DisplayRectangle | Overridden. (inherited from Control)
public property | Disposing | (inherited from Control)
public property | Dock | (inherited from Control)
public property | DockPadding | (inherited from ScrollableControl)
public property | Enabled | (inherited from Control)
public property | Focused | (inherited from Control)
public property | Font | (inherited from Control)
public property | ForeColor | (inherited from Control)
public property | Handle | (inherited from Control)
public property | HasChildren | (inherited from Control)
public property | Height | (inherited from Control)
public property | HorizontalScroll | (inherited from ScrollableControl)
public property | ImeMode | (inherited from Control)
public property | InvokeRequired | (inherited from Control)
public property | IsAccessible | (inherited from Control)
public property | IsDisposed | (inherited from Control)
public property | IsHandleCreated | (inherited from Control)
public property | IsMirrored | (inherited from Control)
public property | LayoutEngine | (inherited from Control)
public property | Left | (inherited from Control)
public property | Location | (inherited from Control)
public property | Margin | (inherited from Control)
public property | MaximumSize | (inherited from Control)
public property | MinimumSize | (inherited from Control)
public property | Name | (inherited from Control)
public property | Padding | (inherited from Control)
public property | Parent | (inherited from Control)
public property | ParentForm | (inherited from ContainerControl)
public property | PreferredSize | (inherited from Control)
public property | ProductName | (inherited from Control)
public property | ProductVersion | (inherited from Control)
public property | RecreatingHandle | (inherited from Control)
public property | Region | (inherited from Control)
public property | Right | (inherited from Control)
public property | RightToLeft | (inherited from Control)
public property | SecureConnectionUriString |
public property | SelectedContractType |
public property | Site | Overridden. (inherited from Component)
public property | Size | (inherited from Control)
public property | TabIndex | (inherited from Control)
public property | TabStop | (inherited from Control)
public property | Tag | (inherited from Control)
public property | Text | Overridden. (inherited from Control)
public property | Top | (inherited from Control)
public property | TopLevelControl | (inherited from Control)
public property | UseWaitCursor | (inherited from Control)
public property | VerticalScroll | (inherited from ScrollableControl)
public property | Visible | (inherited from Control)
public property | Width | (inherited from Control)
public property | WindowTarget | (inherited from Control)
Top

Protected Properties

 | Name | Description
protected property | AutoScaleFactor | (inherited from ContainerControl)
protected property | CanRaiseEvents | Overridden. (inherited from Component)
protected property | CreateParams | Overridden. (inherited from ContainerControl)
protected property | DefaultCursor | (inherited from Control)
protected property | DefaultImeMode | (inherited from Control)
protected property | DefaultMargin | (inherited from Control)
protected property | DefaultMaximumSize | (inherited from Control)
protected property | DefaultMinimumSize | (inherited from Control)
protected property | DefaultPadding | (inherited from Control)
protected property | DefaultSize | Overridden. (inherited from Control)
protected property | DesignMode | (inherited from Component)
protected property | DoubleBuffered | (inherited from Control)
protected property | Events | (inherited from Component)
protected property | FontHeight | (inherited from Control)
protected property | HScroll | (inherited from ScrollableControl)
protected property | ResizeRedraw | (inherited from Control)
protected property | ScaleChildren | (inherited from Control)
protected property | VScroll | (inherited from ScrollableControl)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | BeginInvoke | (inherited from Control)
public method | BeginInvoke | (inherited from Control)
public method | BringToFront | (inherited from Control)
public method | Contains | (inherited from Control)
public method | CreateControl | (inherited from Control)
public method | CreateGraphics | (inherited from Control)
public method | CreateObjRef | (inherited from MarshalByRefObject)
public method | Dispose | (inherited from Component)
public method | DoDragDrop | (inherited from Control)
public method | DrawToBitmap | (inherited from Control)
public method | EndInvoke | (inherited from Control)
public method | Equals | (inherited from Object)
public method | FindForm | (inherited from Control)
public method | Focus | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetContainerControl | (inherited from Control)
public method | GetHashCode | (inherited from Object)
public method | GetLifetimeService | (inherited from MarshalByRefObject)
public method | GetMetadataOperations |
public method | GetNextControl | (inherited from Control)
public method | GetPreferredSize | (inherited from Control)
public method | GetType | (inherited from Object)
public method | GetWsdl |
public method | Hide | (inherited from Control)
public method | InitializeLifetimeService | (inherited from MarshalByRefObject)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | PerformAutoScale | (inherited from ContainerControl)
public method | PerformLayout | (inherited from Control)
public method | PerformLayout | (inherited from Control)
public method | PointToClient | (inherited from Control)
public method | PointToScreen | (inherited from Control)
public method | PreProcessControlMessage | (inherited from Control)
public method | PreProcessMessage | (inherited from Control)
public method | RectangleToClient | (inherited from Control)
public method | RectangleToScreen | (inherited from Control)
public method | Refresh | (inherited from Control)
public method | ResetBackColor | (inherited from Control)
public method | ResetBindings | (inherited from Control)
public method | ResetCursor | (inherited from Control)
public method | ResetFont | (inherited from Control)
public method | ResetForeColor | (inherited from Control)
public method | ResetImeMode | (inherited from Control)
public method | ResetRightToLeft | (inherited from Control)
public method | ResetText | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | Scale | (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | ScrollControlIntoView | (inherited from ScrollableControl)
public method | Select | (inherited from Control)
public method | SelectNextControl | (inherited from Control)
public method | SendToBack | (inherited from Control)
public method | SetAutoScrollMargin | (inherited from ScrollableControl)
public method | SetBounds | (inherited from Control)
public method | SetBounds | (inherited from Control)
public method | Show | (inherited from Control)
public method | SuspendLayout | (inherited from Control)
public method | ToString | Overridden. (inherited from Object)
public method | Update | (inherited from Control)
public method | Validate | (inherited from ContainerControl)
public method | Validate | (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)
Top

Protected Methods

 | Name | Description
protected method | AccessibilityNotifyClients | (inherited from Control)
protected method | AdjustFormScrollbars | Overridden. (inherited from ScrollableControl)
protected method | CreateAccessibilityInstance | (inherited from Control)
protected method | CreateControlsInstance | (inherited from Control)
protected method | CreateHandle | (inherited from Control)
protected method | DefWndProc | (inherited from Control)
protected method | DestroyHandle | (inherited from Control)
protected method | Dispose | Overridden.
protected method | Finalize | Overridden. (inherited from Object)
protected method | GetAccessibilityObjectById | (inherited from Control)
protected method | GetAutoSizeMode | (inherited from Control)
protected method | GetScaledBounds | (inherited from Control)
protected method | GetScrollState | (inherited from ScrollableControl)
protected method | GetService | (inherited from Component)
protected method | GetStyle | (inherited from Control)
protected method | GetTopLevel | (inherited from Control)
protected method | InitLayout | (inherited from Control)
protected method | InvokeGotFocus | (inherited from Control)
protected method | InvokeLostFocus | (inherited from Control)
protected method | InvokeOnClick | (inherited from Control)
protected method | InvokePaint | (inherited from Control)
protected method | InvokePaintBackground | (inherited from Control)
protected method | IsInputChar | (inherited from Control)
protected method | IsInputKey | (inherited from Control)
protected method | MemberwiseClone | (inherited from MarshalByRefObject)
protected method | MemberwiseClone | (inherited from Object)
protected method | NotifyInvalidate | (inherited from Control)
protected method | OnAutoSizeChanged | (inherited from Control)
protected method | OnAutoValidateChanged | (inherited from ContainerControl)
protected method | OnBackColorChanged | (inherited from Control)
protected method | OnBackgroundImageChanged | (inherited from Control)
protected method | OnBackgroundImageLayoutChanged | (inherited from Control)
protected method | OnBindingContextChanged | (inherited from Control)
protected method | OnCausesValidationChanged | (inherited from Control)
protected method | OnChangeUICues | (inherited from Control)
protected method | OnClick | (inherited from Control)
protected method | OnClientSizeChanged | (inherited from Control)
protected method | OnContextMenuChanged | (inherited from Control)
protected method | OnContextMenuStripChanged | (inherited from Control)
protected method | OnControlAdded | (inherited from Control)
protected method | OnControlRemoved | (inherited from Control)
protected method | OnCreateControl | Overridden. (inherited from ContainerControl)
protected method | OnCursorChanged | (inherited from Control)
protected method | OnDockChanged | (inherited from Control)
protected method | OnDoubleClick | (inherited from Control)
protected method | OnDragDrop | (inherited from Control)
protected method | OnDragEnter | (inherited from Control)
protected method | OnDragLeave | (inherited from Control)
protected method | OnDragOver | (inherited from Control)
protected method | OnEnabledChanged | (inherited from Control)
protected method | OnEnter | (inherited from Control)
protected method | OnFontChanged | Overridden. (inherited from Control)
protected method | OnForeColorChanged | (inherited from Control)
protected method | OnGiveFeedback | (inherited from Control)
protected method | OnGotFocus | (inherited from Control)
protected method | OnHandleCreated | (inherited from Control)
protected method | OnHandleDestroyed | (inherited from Control)
protected method | OnHelpRequested | (inherited from Control)
protected method | OnImeModeChanged | (inherited from Control)
protected method | OnInvalidated | (inherited from Control)
protected method | OnKeyDown | (inherited from Control)
protected method | OnKeyPress | (inherited from Control)
protected method | OnKeyUp | (inherited from Control)
protected method | OnLayout | Overridden. (inherited from ScrollableControl)
protected method | OnLeave | (inherited from Control)
protected method | OnLoad | Overridden.
protected method | OnLocationChanged | (inherited from Control)
protected method | OnLostFocus | (inherited from Control)
protected method | OnMarginChanged | (inherited from Control)
protected method | OnMouseCaptureChanged | (inherited from Control)
protected method | OnMouseClick | (inherited from Control)
protected method | OnMouseDoubleClick | (inherited from Control)
protected method | OnMouseDown | Overridden. (inherited from Control)
protected method | OnMouseEnter | (inherited from Control)
protected method | OnMouseHover | (inherited from Control)
protected method | OnMouseLeave | (inherited from Control)
protected method | OnMouseMove | (inherited from Control)
protected method | OnMouseUp | (inherited from Control)
protected method | OnMouseWheel | Overridden. (inherited from Control)
protected method | OnMove | (inherited from Control)
protected method | OnNotifyMessage | (inherited from Control)
protected method | OnPaddingChanged | Overridden. (inherited from Control)
protected method | OnPaint | (inherited from Control)
protected method | OnPaintBackground | Overridden. (inherited from Control)
protected method | OnParentBackColorChanged | (inherited from Control)
protected method | OnParentBackgroundImageChanged | (inherited from Control)
protected method | OnParentBindingContextChanged | (inherited from Control)
protected method | OnParentChanged | Overridden. (inherited from Control)
protected method | OnParentCursorChanged | (inherited from Control)
protected method | OnParentEnabledChanged | (inherited from Control)
protected method | OnParentFontChanged | (inherited from Control)
protected method | OnParentForeColorChanged | (inherited from Control)
protected method | OnParentRightToLeftChanged | (inherited from Control)
protected method | OnParentVisibleChanged | (inherited from Control)
protected method | OnPreviewKeyDown | (inherited from Control)
protected method | OnPrint | (inherited from Control)
protected method | OnQueryContinueDrag | (inherited from Control)
protected method | OnRegionChanged | (inherited from Control)
protected method | OnResize | Overridden. (inherited from Control)
protected method | OnRightToLeftChanged | Overridden. (inherited from Control)
protected method | OnScroll | (inherited from ScrollableControl)
protected method | OnSizeChanged | (inherited from Control)
protected method | OnStyleChanged | (inherited from Control)
protected method | OnSystemColorsChanged | (inherited from Control)
protected method | OnTabIndexChanged | (inherited from Control)
protected method | OnTabStopChanged | (inherited from Control)
protected method | OnTextChanged | (inherited from Control)
protected method | OnValidated | (inherited from Control)
protected method | OnValidating | (inherited from Control)
protected method | OnVisibleChanged | Overridden. (inherited from Control)
protected method | ProcessCmdKey | Overridden. (inherited from Control)
protected method | ProcessDialogChar | Overridden. (inherited from Control)
protected method | ProcessDialogKey | Overridden. (inherited from Control)
protected method | ProcessKeyEventArgs | (inherited from Control)
protected method | ProcessKeyPreview | (inherited from Control)
protected method | ProcessTabKey | (inherited from ContainerControl)
protected method | RaiseDragEvent | (inherited from Control)
protected method | RaiseKeyEvent | (inherited from Control)
protected method | RaiseMouseEvent | (inherited from Control)
protected method | RaisePaintEvent | (inherited from Control)
protected method | RecreateHandle | (inherited from Control)
protected method | ResetMouseEventArgs | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateHorizontal | (inherited from Control)
protected method | RtlTranslateLeftRight | (inherited from Control)
protected method | ScaleControl | Overridden. (inherited from Control)
protected method | ScaleCore | Overridden. (inherited from Control)
protected method | ScrollToControl | (inherited from ScrollableControl)
protected method | Select | Overridden. (inherited from Control)
protected method | SetAutoSizeMode | (inherited from Control)
protected method | SetBoundsCore | (inherited from Control)
protected method | SetClientSizeCore | (inherited from Control)
protected method | SetDisplayRectLocation | (inherited from ScrollableControl)
protected method | SetScrollState | (inherited from ScrollableControl)
protected method | SetStyle | (inherited from Control)
protected method | SetTopLevel | (inherited from Control)
protected method | SetVisibleCore | (inherited from Control)
protected method | SizeFromClientSize | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateDefaultButton | (inherited from ContainerControl)
protected method | UpdateStyles | (inherited from Control)
protected method | UpdateZOrder | (inherited from Control)
protected method | WndProc | Overridden. (inherited from ContainerControl)
Top

Public Events

 | Name | Description
public event | AutoSizeChanged | (inherited from UserControl)
public event | AutoValidateChanged | (inherited from UserControl)
public event | BackColorChanged | (inherited from Control)
public event | BackgroundImageChanged | (inherited from Control)
public event | BackgroundImageLayoutChanged | (inherited from Control)
public event | BindingContextChanged | (inherited from Control)
public event | CausesValidationChanged | (inherited from Control)
public event | ChangeUICues | (inherited from Control)
public event | Click | (inherited from Control)
public event | ClientSizeChanged | (inherited from Control)
public event | ContextMenuChanged | (inherited from Control)
public event | ContextMenuStripChanged | (inherited from Control)
public event | ControlAdded | (inherited from Control)
public event | ControlRemoved | (inherited from Control)
public event | CursorChanged | (inherited from Control)
public event | Disposed | (inherited from Component)
public event | DockChanged | (inherited from Control)
public event | DoubleClick | (inherited from Control)
public event | DragDrop | (inherited from Control)
public event | DragEnter | (inherited from Control)
public event | DragLeave | (inherited from Control)
public event | DragOver | (inherited from Control)
public event | EnabledChanged | (inherited from Control)
public event | Enter | (inherited from Control)
public event | FontChanged | (inherited from Control)
public event | ForeColorChanged | (inherited from Control)
public event | GiveFeedback | (inherited from Control)
public event | GotFocus | (inherited from Control)
public event | HandleCreated | (inherited from Control)
public event | HandleDestroyed | (inherited from Control)
public event | HelpRequested | (inherited from Control)
public event | ImeModeChanged | (inherited from Control)
public event | Invalidated | (inherited from Control)
public event | KeyDown | (inherited from Control)
public event | KeyPress | (inherited from Control)
public event | KeyUp | (inherited from Control)
public event | Layout | (inherited from Control)
public event | Leave | (inherited from Control)
public event | Load | (inherited from UserControl)
public event | LocationChanged | (inherited from Control)
public event | LostFocus | (inherited from Control)
public event | MarginChanged | (inherited from Control)
public event | MouseCaptureChanged | (inherited from Control)
public event | MouseClick | (inherited from Control)
public event | MouseDoubleClick | (inherited from Control)
public event | MouseDown | (inherited from Control)
public event | MouseEnter | (inherited from Control)
public event | MouseHover | (inherited from Control)
public event | MouseLeave | (inherited from Control)
public event | MouseMove | (inherited from Control)
public event | MouseUp | (inherited from Control)
public event | MouseWheel | (inherited from Control)
public event | Move | (inherited from Control)
public event | OnAdapterChanged |
public event | OnConnectionStateChanged |
public event | OnMetadataOperationsChanged |
public event | OnPropertiesViewed |
public event | PaddingChanged | (inherited from Control)
public event | Paint | (inherited from Control)
public event | ParentChanged | (inherited from Control)
public event | PreviewKeyDown | (inherited from Control)
public event | QueryAccessibilityHelp | (inherited from Control)
public event | QueryContinueDrag | (inherited from Control)
public event | RegionChanged | (inherited from Control)
public event | Resize | (inherited from Control)
public event | RightToLeftChanged | (inherited from Control)
public event | Scroll | (inherited from ScrollableControl)
public event | SizeChanged | (inherited from Control)
public event | StyleChanged | (inherited from Control)
public event | SystemColorsChanged | (inherited from Control)
public event | TabIndexChanged | (inherited from Control)
public event | TabStopChanged | (inherited from Control)
public event | TextChanged | (inherited from UserControl)
public event | Validated | (inherited from Control)
public event | Validating | (inherited from Control)
public event | VisibleChanged | (inherited from Control)
Top

Explicit Interface Implementations

Name | Description
ActivateControl | (inherited from ContainerControl)
OnDragDrop | (inherited from Control)
OnDragEnter | (inherited from Control)
OnDragLeave | (inherited from Control)
OnDragOver | (inherited from Control)
Top

See Also

Reference

MetadataUserControl Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Constructor
[image]

Overload List

Name | Description
MetadataUserControl () |
MetadataUserControl (InvokedFrom) |
MetadataUserControl (InvokedFrom, String, String, String) |
MetadataUserControl (String, String, String) |

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Constructor ()
[image]

Initializes a new instance of the MetadataUserControl Class.

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As New MetadataUserControl

Syntax

Visual Basic
Public Sub New
C#
public MetadataUserControl ()
C++
public:
MetadataUserControl ()
J#
public MetadataUserControl ()
JScript
public function MetadataUserControl ()

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Constructor (InvokedFrom)
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim invokedFrom As InvokedFrom

Dim instance As New MetadataUserControl(invokedFrom)

Syntax

Visual Basic
Public Sub New ( _
    invokedFrom As InvokedFrom _
)
C#
public MetadataUserControl (
    InvokedFrom invokedFrom
)
C++
public:
MetadataUserControl (
    InvokedFrom invokedFrom
)
J#
public MetadataUserControl (
    InvokedFrom invokedFrom
)
JScript
public function MetadataUserControl (
    invokedFrom : InvokedFrom
)

Parameters

invokedFrom

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Constructor (InvokedFrom, String, String, String)
[image]

Initializes a new instance of the MetadataUserControl Class.Initializes a new instance of the MetadataUserControl Class.

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim invokedFrom As InvokedFrom
Dim bindingExtensionName As String
Dim bindingConfiguration As String
Dim endpointAddress As String

Dim instance As New MetadataUserControl(invokedFrom, bindingExtensionName, bindingConfiguration, endpointAddress)

Syntax

Visual Basic
Public Sub New ( _
    invokedFrom As InvokedFrom, _
    bindingExtensionName As String, _
    bindingConfiguration As String, _
    endpointAddress As String _
)
C#
public MetadataUserControl (
    InvokedFrom invokedFrom,
    string bindingExtensionName,
    string bindingConfiguration,
    string endpointAddress
)
C++
public:
MetadataUserControl (
    InvokedFrom invokedFrom,
    String^ bindingExtensionName,
    String^ bindingConfiguration,
    String^ endpointAddress
)
J#
public MetadataUserControl (
    InvokedFrom invokedFrom,
    String bindingExtensionName,
    String bindingConfiguration,
    String endpointAddress
)
JScript
public function MetadataUserControl (
    invokedFrom : InvokedFrom,
    bindingExtensionName : String,
    bindingConfiguration : String,
    endpointAddress : String
)

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Constructor (String, String, String)
[image]

Initializes a new instance of the MetadataUserControl Class.Initializes a new instance of the MetadataUserControl Class.

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim bindingExtensionName As String
Dim bindingConfiguration As String
Dim endpointAddress As String

Dim instance As New MetadataUserControl(bindingExtensionName, bindingConfiguration, endpointAddress)

Syntax

Visual Basic
Public Sub New ( _
    bindingExtensionName As String, _
    bindingConfiguration As String, _
    endpointAddress As String _
)
C#
public MetadataUserControl (
    string bindingExtensionName,
    string bindingConfiguration,
    string endpointAddress
)
C++
public:
MetadataUserControl (
    String^ bindingExtensionName,
    String^ bindingConfiguration,
    String^ endpointAddress
)
J#
public MetadataUserControl (
    String bindingExtensionName,
    String bindingConfiguration,
    String endpointAddress
)
JScript
public function MetadataUserControl (
    bindingExtensionName : String,
    bindingConfiguration : String,
    endpointAddress : String
)

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | BeginInvoke | (inherited from Control)
public method | BeginInvoke | (inherited from Control)
public method | BringToFront | (inherited from Control)
public method | Contains | (inherited from Control)
public method | CreateControl | (inherited from Control)
public method | CreateGraphics | (inherited from Control)
public method | CreateObjRef | (inherited from MarshalByRefObject)
public method | Dispose | (inherited from Component)
public method | DoDragDrop | (inherited from Control)
public method | DrawToBitmap | (inherited from Control)
public method | EndInvoke | (inherited from Control)
public method | Equals | (inherited from Object)
public method | FindForm | (inherited from Control)
public method | Focus | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetContainerControl | (inherited from Control)
public method | GetHashCode | (inherited from Object)
public method | GetLifetimeService | (inherited from MarshalByRefObject)
public method | GetMetadataOperations |
public method | GetNextControl | (inherited from Control)
public method | GetPreferredSize | (inherited from Control)
public method | GetType | (inherited from Object)
public method | GetWsdl |
public method | Hide | (inherited from Control)
public method | InitializeLifetimeService | (inherited from MarshalByRefObject)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | PerformAutoScale | (inherited from ContainerControl)
public method | PerformLayout | (inherited from Control)
public method | PerformLayout | (inherited from Control)
public method | PointToClient | (inherited from Control)
public method | PointToScreen | (inherited from Control)
public method | PreProcessControlMessage | (inherited from Control)
public method | PreProcessMessage | (inherited from Control)
public method | RectangleToClient | (inherited from Control)
public method | RectangleToScreen | (inherited from Control)
public method | Refresh | (inherited from Control)
public method | ResetBackColor | (inherited from Control)
public method | ResetBindings | (inherited from Control)
public method | ResetCursor | (inherited from Control)
public method | ResetFont | (inherited from Control)
public method | ResetForeColor | (inherited from Control)
public method | ResetImeMode | (inherited from Control)
public method | ResetRightToLeft | (inherited from Control)
public method | ResetText | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | Scale | (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | ScrollControlIntoView | (inherited from ScrollableControl)
public method | Select | (inherited from Control)
public method | SelectNextControl | (inherited from Control)
public method | SendToBack | (inherited from Control)
public method | SetAutoScrollMargin | (inherited from ScrollableControl)
public method | SetBounds | (inherited from Control)
public method | SetBounds | (inherited from Control)
public method | Show | (inherited from Control)
public method | SuspendLayout | (inherited from Control)
public method | ToString | Overridden. (inherited from Object)
public method | Update | (inherited from Control)
public method | Validate | (inherited from ContainerControl)
public method | Validate | (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)

Protected Methods

 | Name | Description
protected method | AccessibilityNotifyClients | (inherited from Control)
protected method | AdjustFormScrollbars | Overridden. (inherited from ScrollableControl)
protected method | CreateAccessibilityInstance | (inherited from Control)
protected method | CreateControlsInstance | (inherited from Control)
protected method | CreateHandle | (inherited from Control)
protected method | DefWndProc | (inherited from Control)
protected method | DestroyHandle | (inherited from Control)
protected method | Dispose | Overridden.
protected method | Finalize | Overridden. (inherited from Object)
protected method | GetAccessibilityObjectById | (inherited from Control)
protected method | GetAutoSizeMode | (inherited from Control)
protected method | GetScaledBounds | (inherited from Control)
protected method | GetScrollState | (inherited from ScrollableControl)
protected method | GetService | (inherited from Component)
protected method | GetStyle | (inherited from Control)
protected method | GetTopLevel | (inherited from Control)
protected method | InitLayout | (inherited from Control)
protected method | InvokeGotFocus | (inherited from Control)
protected method | InvokeLostFocus | (inherited from Control)
protected method | InvokeOnClick | (inherited from Control)
protected method | InvokePaint | (inherited from Control)
protected method | InvokePaintBackground | (inherited from Control)
protected method | IsInputChar | (inherited from Control)
protected method | IsInputKey | (inherited from Control)
protected method | MemberwiseClone | (inherited from MarshalByRefObject)
protected method | MemberwiseClone | (inherited from Object)
protected method | NotifyInvalidate | (inherited from Control)
protected method | OnAutoSizeChanged | (inherited from Control)
protected method | OnAutoValidateChanged | (inherited from ContainerControl)
protected method | OnBackColorChanged | (inherited from Control)
protected method | OnBackgroundImageChanged | (inherited from Control)
protected method | OnBackgroundImageLayoutChanged | (inherited from Control)
protected method | OnBindingContextChanged | (inherited from Control)
protected method | OnCausesValidationChanged | (inherited from Control)
protected method | OnChangeUICues | (inherited from Control)
protected method | OnClick | (inherited from Control)
protected method | OnClientSizeChanged | (inherited from Control)
protected method | OnContextMenuChanged | (inherited from Control)
protected method | OnContextMenuStripChanged | (inherited from Control)
protected method | OnControlAdded | (inherited from Control)
protected method | OnControlRemoved | (inherited from Control)
protected method | OnCreateControl | Overridden. (inherited from ContainerControl)
protected method | OnCursorChanged | (inherited from Control)
protected method | OnDockChanged | (inherited from Control)
protected method | OnDoubleClick | (inherited from Control)
protected method | OnDragDrop | (inherited from Control)
protected method | OnDragEnter | (inherited from Control)
protected method | OnDragLeave | (inherited from Control)
protected method | OnDragOver | (inherited from Control)
protected method | OnEnabledChanged | (inherited from Control)
protected method | OnEnter | (inherited from Control)
protected method | OnFontChanged | Overridden. (inherited from Control)
protected method | OnForeColorChanged | (inherited from Control)
protected method | OnGiveFeedback | (inherited from Control)
protected method | OnGotFocus | (inherited from Control)
protected method | OnHandleCreated | (inherited from Control)
protected method | OnHandleDestroyed | (inherited from Control)
protected method | OnHelpRequested | (inherited from Control)
protected method | OnImeModeChanged | (inherited from Control)
protected method | OnInvalidated | (inherited from Control)
protected method | OnKeyDown | (inherited from Control)
protected method | OnKeyPress | (inherited from Control)
protected method | OnKeyUp | (inherited from Control)
protected method | OnLayout | Overridden. (inherited from ScrollableControl)
protected method | OnLeave | (inherited from Control)
protected method | OnLoad | Overridden.
protected method | OnLocationChanged | (inherited from Control)
protected method | OnLostFocus | (inherited from Control)
protected method | OnMarginChanged | (inherited from Control)
protected method | OnMouseCaptureChanged | (inherited from Control)
protected method | OnMouseClick | (inherited from Control)
protected method | OnMouseDoubleClick | (inherited from Control)
protected method | OnMouseDown | Overridden. (inherited from Control)
protected method | OnMouseEnter | (inherited from Control)
protected method | OnMouseHover | (inherited from Control)
protected method | OnMouseLeave | (inherited from Control)
protected method | OnMouseMove | (inherited from Control)
protected method | OnMouseUp | (inherited from Control)
protected method | OnMouseWheel | Overridden. (inherited from Control)
protected method | OnMove | (inherited from Control)
protected method | OnNotifyMessage | (inherited from Control)
protected method | OnPaddingChanged | Overridden. (inherited from Control)
protected method | OnPaint | (inherited from Control)
protected method | OnPaintBackground | Overridden. (inherited from Control)
protected method | OnParentBackColorChanged | (inherited from Control)
protected method | OnParentBackgroundImageChanged | (inherited from Control)
protected method | OnParentBindingContextChanged | (inherited from Control)
protected method | OnParentChanged | Overridden. (inherited from Control)
protected method | OnParentCursorChanged | (inherited from Control)
protected method | OnParentEnabledChanged | (inherited from Control)
protected method | OnParentFontChanged | (inherited from Control)
protected method | OnParentForeColorChanged | (inherited from Control)
protected method | OnParentRightToLeftChanged | (inherited from Control)
protected method | OnParentVisibleChanged | (inherited from Control)
protected method | OnPreviewKeyDown | (inherited from Control)
protected method | OnPrint | (inherited from Control)
protected method | OnQueryContinueDrag | (inherited from Control)
protected method | OnRegionChanged | (inherited from Control)
protected method | OnResize | Overridden. (inherited from Control)
protected method | OnRightToLeftChanged | Overridden. (inherited from Control)
protected method | OnScroll | (inherited from ScrollableControl)
protected method | OnSizeChanged | (inherited from Control)
protected method | OnStyleChanged | (inherited from Control)
protected method | OnSystemColorsChanged | (inherited from Control)
protected method | OnTabIndexChanged | (inherited from Control)
protected method | OnTabStopChanged | (inherited from Control)
protected method | OnTextChanged | (inherited from Control)
protected method | OnValidated | (inherited from Control)
protected method | OnValidating | (inherited from Control)
protected method | OnVisibleChanged | Overridden. (inherited from Control)
protected method | ProcessCmdKey | Overridden. (inherited from Control)
protected method | ProcessDialogChar | Overridden. (inherited from Control)
protected method | ProcessDialogKey | Overridden. (inherited from Control)
protected method | ProcessKeyEventArgs | (inherited from Control)
protected method | ProcessKeyPreview | (inherited from Control)
protected method | ProcessTabKey | (inherited from ContainerControl)
protected method | RaiseDragEvent | (inherited from Control)
protected method | RaiseKeyEvent | (inherited from Control)
protected method | RaiseMouseEvent | (inherited from Control)
protected method | RaisePaintEvent | (inherited from Control)
protected method | RecreateHandle | (inherited from Control)
protected method | ResetMouseEventArgs | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateHorizontal | (inherited from Control)
protected method | RtlTranslateLeftRight | (inherited from Control)
protected method | ScaleControl | Overridden. (inherited from Control)
protected method | ScaleCore | Overridden. (inherited from Control)
protected method | ScrollToControl | (inherited from ScrollableControl)
protected method | Select | Overridden. (inherited from Control)
protected method | SetAutoSizeMode | (inherited from Control)
protected method | SetBoundsCore | (inherited from Control)
protected method | SetClientSizeCore | (inherited from Control)
protected method | SetDisplayRectLocation | (inherited from ScrollableControl)
protected method | SetScrollState | (inherited from ScrollableControl)
protected method | SetStyle | (inherited from Control)
protected method | SetTopLevel | (inherited from Control)
protected method | SetVisibleCore | (inherited from Control)
protected method | SizeFromClientSize | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateDefaultButton | (inherited from ContainerControl)
protected method | UpdateStyles | (inherited from Control)
protected method | UpdateZOrder | (inherited from Control)
protected method | WndProc | Overridden. (inherited from ContainerControl)

Explicit Interface Implementations

Name | Description
ActivateControl | (inherited from ContainerControl)
OnDragDrop | (inherited from Control)
OnDragEnter | (inherited from Control)
OnDragLeave | (inherited from Control)
OnDragOver | (inherited from Control)

See Also

Reference

MetadataUserControl Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.Dispose Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim disposing As Boolean

Me.Dispose(disposing)

Syntax

Visual Basic
Protected Overrides Sub Dispose ( _
    disposing As Boolean _
)
C#
protected override void Dispose (
    bool disposing
)
C++
protected:
virtual void Dispose (
    bool disposing
) override
J#
protected void Dispose (
    boolean disposing
)
JScript
protected override function Dispose (
    disposing : boolean
)

Parameters

disposing

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.GetMetadataOperations Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl
Dim returnValue As MetadataRetrievalNode()

returnValue = instance.GetMetadataOperations

Syntax

Visual Basic
Public Function GetMetadataOperations As MetadataRetrievalNode()
C#
public MetadataRetrievalNode[] GetMetadataOperations ()
C++
public:
array<MetadataRetrievalNode^>^ GetMetadataOperations ()
J#
public MetadataRetrievalNode[] GetMetadataOperations ()
JScript
public function GetMetadataOperations () : MetadataRetrievalNode[]

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.GetWsdl Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl
Dim returnValue As ServiceDescription

returnValue = instance.GetWsdl

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")> _
Public Function GetWsdl As ServiceDescription
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")]
public ServiceDescription GetWsdl ()
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1024:UsePropertiesWhereAppropriate")]
public:
ServiceDescription^ GetWsdl ()
J#
/** @attribute SuppressMessageAttribute("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate") */
public ServiceDescription GetWsdl ()
JScript
SuppressMessageAttribute("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")
public function GetWsdl () : ServiceDescription

Return Value

Returns ServiceDescription.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.OnLoad Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim e As EventArgs

Me.OnLoad(e)

Syntax

Visual Basic
Protected Overrides Sub OnLoad ( _
    e As EventArgs _
)
C#
protected override void OnLoad (
    EventArgs e
)
C++
protected:
virtual void OnLoad (
    EventArgs^ e
) override
J#
protected void OnLoad (
    EventArgs e
)
JScript
protected override function OnLoad (
    e : EventArgs
)

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | AccessibilityObject | (inherited from Control)
public property | AccessibleDefaultActionDescription | (inherited from Control)
public property | AccessibleDescription | (inherited from Control)
public property | AccessibleName | (inherited from Control)
public property | AccessibleRole | (inherited from Control)
public property | ActiveControl | (inherited from ContainerControl)
public property | Adapter |
public property | AllowDrop | (inherited from Control)
public property | Anchor | (inherited from Control)
public property | AutoScaleDimensions | (inherited from ContainerControl)
public property | AutoScaleMode | (inherited from ContainerControl)
public property | AutoScroll | (inherited from ScrollableControl)
public property | AutoScrollMargin | (inherited from ScrollableControl)
public property | AutoScrollMinSize | (inherited from ScrollableControl)
public property | AutoScrollOffset | (inherited from Control)
public property | AutoScrollPosition | (inherited from ScrollableControl)
public property | AutoSize | Overridden. (inherited from Control)
public property | AutoSizeMode | (inherited from UserControl)
public property | AutoValidate | Overridden. (inherited from ContainerControl)
public property | BackColor | (inherited from Control)
public property | BackgroundImage | (inherited from Control)
public property | BackgroundImageLayout | (inherited from Control)
public property | BindingContext | Overridden. (inherited from Control)
public property | BorderStyle | (inherited from UserControl)
public property | Bottom | (inherited from Control)
public property | Bounds | (inherited from Control)
public property | CanFocus | (inherited from Control)
public property | CanSelect | (inherited from Control)
public property | Capture | (inherited from Control)
public property | CausesValidation | (inherited from Control)
public property | ClientRectangle | (inherited from Control)
public property | ClientSize | (inherited from Control)
public property | CompanyName | (inherited from Control)
public property | Container | (inherited from Component)
public property | ContainsFocus | (inherited from Control)
public property | ContextMenu | (inherited from Control)
public property | ContextMenuStrip | (inherited from Control)
public property | Controls | (inherited from Control)
public property | Created | (inherited from Control)
public property | CurrentAutoScaleDimensions | (inherited from ContainerControl)
public property | Cursor | (inherited from Control)
public property | DataBindings | (inherited from Control)
public property | DisplayRectangle | Overridden. (inherited from Control)
public property | Disposing | (inherited from Control)
public property | Dock | (inherited from Control)
public property | DockPadding | (inherited from ScrollableControl)
public property | Enabled | (inherited from Control)
public property | Focused | (inherited from Control)
public property | Font | (inherited from Control)
public property | ForeColor | (inherited from Control)
public property | Handle | (inherited from Control)
public property | HasChildren | (inherited from Control)
public property | Height | (inherited from Control)
public property | HorizontalScroll | (inherited from ScrollableControl)
public property | ImeMode | (inherited from Control)
public property | InvokeRequired | (inherited from Control)
public property | IsAccessible | (inherited from Control)
public property | IsDisposed | (inherited from Control)
public property | IsHandleCreated | (inherited from Control)
public property | IsMirrored | (inherited from Control)
public property | LayoutEngine | (inherited from Control)
public property | Left | (inherited from Control)
public property | Location | (inherited from Control)
public property | Margin | (inherited from Control)
public property | MaximumSize | (inherited from Control)
public property | MinimumSize | (inherited from Control)
public property | Name | (inherited from Control)
public property | Padding | (inherited from Control)
public property | Parent | (inherited from Control)
public property | ParentForm | (inherited from ContainerControl)
public property | PreferredSize | (inherited from Control)
public property | ProductName | (inherited from Control)
public property | ProductVersion | (inherited from Control)
public property | RecreatingHandle | (inherited from Control)
public property | Region | (inherited from Control)
public property | Right | (inherited from Control)
public property | RightToLeft | (inherited from Control)
public property | SecureConnectionUriString |
public property | SelectedContractType |
public property | Site | Overridden. (inherited from Component)
public property | Size | (inherited from Control)
public property | TabIndex | (inherited from Control)
public property | TabStop | (inherited from Control)
public property | Tag | (inherited from Control)
public property | Text | Overridden. (inherited from Control)
public property | Top | (inherited from Control)
public property | TopLevelControl | (inherited from Control)
public property | UseWaitCursor | (inherited from Control)
public property | VerticalScroll | (inherited from ScrollableControl)
public property | Visible | (inherited from Control)
public property | Width | (inherited from Control)
public property | WindowTarget | (inherited from Control)

Protected Properties

 | Name | Description
protected property | AutoScaleFactor | (inherited from ContainerControl)
protected property | CanRaiseEvents | Overridden. (inherited from Component)
protected property | CreateParams | Overridden. (inherited from ContainerControl)
protected property | DefaultCursor | (inherited from Control)
protected property | DefaultImeMode | (inherited from Control)
protected property | DefaultMargin | (inherited from Control)
protected property | DefaultMaximumSize | (inherited from Control)
protected property | DefaultMinimumSize | (inherited from Control)
protected property | DefaultPadding | (inherited from Control)
protected property | DefaultSize | Overridden. (inherited from Control)
protected property | DesignMode | (inherited from Component)
protected property | DoubleBuffered | (inherited from Control)
protected property | Events | (inherited from Component)
protected property | FontHeight | (inherited from Control)
protected property | HScroll | (inherited from ScrollableControl)
protected property | ResizeRedraw | (inherited from Control)
protected property | ScaleChildren | (inherited from Control)
protected property | VScroll | (inherited from ScrollableControl)

See Also

Reference

MetadataUserControl Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.Adapter Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl
Dim value As AdapterBinding

value = instance.Adapter

instance.Adapter = value

Syntax

Visual Basic
<BrowsableAttribute(False)> _
Public Property Adapter As AdapterBinding
C#
[BrowsableAttribute(false)]
public AdapterBinding Adapter { get; set; }
C++
[BrowsableAttribute(false)]
public:
property AdapterBinding^ Adapter {
    AdapterBinding^ get ();
    void set (AdapterBinding^ value);
}
J#
/** @property */
public AdapterBinding get_Adapter ()

/** @property */
public void set_Adapter (AdapterBinding value)
JScript
public function get Adapter () : AdapterBinding

public function set Adapter (value : AdapterBinding)

Property Value

Returns Binding.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.SecureConnectionUriString Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl
Dim value As String

value = instance.SecureConnectionUriString

Syntax

Visual Basic
<SuppressMessageAttribute("Microsoft.Design", "CA1056:UriPropertiesShouldNotBeStrings")> _
Public ReadOnly Property SecureConnectionUriString As String
C#
[SuppressMessageAttribute("Microsoft.Design", "CA1056:UriPropertiesShouldNotBeStrings")]
public string SecureConnectionUriString { get; }
C++
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1056:UriPropertiesShouldNotBeStrings")]
public:
property String^ SecureConnectionUriString {
    String^ get ();
}
J#
/** @property */
public String get_SecureConnectionUriString ()
JScript
public function get SecureConnectionUriString () : String

Property Value

Returns String.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.SelectedContractType Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl
Dim value As ContractType

value = instance.SelectedContractType

Syntax

Visual Basic
Public ReadOnly Property SelectedContractType As ContractType
C#
public ContractType SelectedContractType { get; }
C++
public:
property ContractType SelectedContractType {
    ContractType get ();
}
J#
/** @property */
public ContractType get_SelectedContractType ()
JScript
public function get SelectedContractType () : ContractType

Property Value

Returns ContractType.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl Events
[image]

Public Events

 | Name | Description
public event | AutoSizeChanged | (inherited from UserControl)
public event | AutoValidateChanged | (inherited from UserControl)
public event | BackColorChanged | (inherited from Control)
public event | BackgroundImageChanged | (inherited from Control)
public event | BackgroundImageLayoutChanged | (inherited from Control)
public event | BindingContextChanged | (inherited from Control)
public event | CausesValidationChanged | (inherited from Control)
public event | ChangeUICues | (inherited from Control)
public event | Click | (inherited from Control)
public event | ClientSizeChanged | (inherited from Control)
public event | ContextMenuChanged | (inherited from Control)
public event | ContextMenuStripChanged | (inherited from Control)
public event | ControlAdded | (inherited from Control)
public event | ControlRemoved | (inherited from Control)
public event | CursorChanged | (inherited from Control)
public event | Disposed | (inherited from Component)
public event | DockChanged | (inherited from Control)
public event | DoubleClick | (inherited from Control)
public event | DragDrop | (inherited from Control)
public event | DragEnter | (inherited from Control)
public event | DragLeave | (inherited from Control)
public event | DragOver | (inherited from Control)
public event | EnabledChanged | (inherited from Control)
public event | Enter | (inherited from Control)
public event | FontChanged | (inherited from Control)
public event | ForeColorChanged | (inherited from Control)
public event | GiveFeedback | (inherited from Control)
public event | GotFocus | (inherited from Control)
public event | HandleCreated | (inherited from Control)
public event | HandleDestroyed | (inherited from Control)
public event | HelpRequested | (inherited from Control)
public event | ImeModeChanged | (inherited from Control)
public event | Invalidated | (inherited from Control)
public event | KeyDown | (inherited from Control)
public event | KeyPress | (inherited from Control)
public event | KeyUp | (inherited from Control)
public event | Layout | (inherited from Control)
public event | Leave | (inherited from Control)
public event | Load | (inherited from UserControl)
public event | LocationChanged | (inherited from Control)
public event | LostFocus | (inherited from Control)
public event | MarginChanged | (inherited from Control)
public event | MouseCaptureChanged | (inherited from Control)
public event | MouseClick | (inherited from Control)
public event | MouseDoubleClick | (inherited from Control)
public event | MouseDown | (inherited from Control)
public event | MouseEnter | (inherited from Control)
public event | MouseHover | (inherited from Control)
public event | MouseLeave | (inherited from Control)
public event | MouseMove | (inherited from Control)
public event | MouseUp | (inherited from Control)
public event | MouseWheel | (inherited from Control)
public event | Move | (inherited from Control)
public event | OnAdapterChanged |
public event | OnConnectionStateChanged |
public event | OnMetadataOperationsChanged |
public event | OnPropertiesViewed |
public event | PaddingChanged | (inherited from Control)
public event | Paint | (inherited from Control)
public event | ParentChanged | (inherited from Control)
public event | PreviewKeyDown | (inherited from Control)
public event | QueryAccessibilityHelp | (inherited from Control)
public event | QueryContinueDrag | (inherited from Control)
public event | RegionChanged | (inherited from Control)
public event | Resize | (inherited from Control)
public event | RightToLeftChanged | (inherited from Control)
public event | Scroll | (inherited from ScrollableControl)
public event | SizeChanged | (inherited from Control)
public event | StyleChanged | (inherited from Control)
public event | SystemColorsChanged | (inherited from Control)
public event | TabIndexChanged | (inherited from Control)
public event | TabStopChanged | (inherited from Control)
public event | TextChanged | (inherited from UserControl)
public event | Validated | (inherited from Control)
public event | Validating | (inherited from Control)
public event | VisibleChanged | (inherited from Control)

See Also

Reference

MetadataUserControl Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.OnAdapterChanged Event
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl
Dim handler As EventHandler(Of AdapterChangedEventArgs)

AddHandler instance.OnAdapterChanged, handler

Syntax

Visual Basic
Public Event OnAdapterChanged As EventHandler(Of AdapterChangedEventArgs)
C#
public event EventHandler<AdapterChangedEventArgs> OnAdapterChanged
C++
public:
event EventHandler<AdapterChangedEventArgs^>^ OnAdapterChanged {
    void add (EventHandler<AdapterChangedEventArgs^>^ value);
    void remove (EventHandler<AdapterChangedEventArgs^>^ value);
}
J#
/** @event */
public void add_OnAdapterChanged (EventHandler<AdapterChangedEventArgs> value)

/** @event */
public void remove_OnAdapterChanged (EventHandler<AdapterChangedEventArgs> value)
JScript

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.OnConnectionStateChanged Event
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl
Dim handler As EventHandler(Of ConnectionStateChangedEventArgs)

AddHandler instance.OnConnectionStateChanged, handler

Syntax

Visual Basic
Public Event OnConnectionStateChanged As EventHandler(Of ConnectionStateChangedEventArgs)
C#
public event EventHandler<ConnectionStateChangedEventArgs> OnConnectionStateChanged
C++
public:
event EventHandler<ConnectionStateChangedEventArgs^>^ OnConnectionStateChanged {
    void add (EventHandler<ConnectionStateChangedEventArgs^>^ value);
    void remove (EventHandler<ConnectionStateChangedEventArgs^>^ value);
}
J#
/** @event */
public void add_OnConnectionStateChanged (EventHandler<ConnectionStateChangedEventArgs> value)

/** @event */
public void remove_OnConnectionStateChanged (EventHandler<ConnectionStateChangedEventArgs> value)
JScript

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.OnMetadataOperationsChanged Event
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl
Dim handler As EventHandler(Of MetadataOperationsChangedEventArgs)

AddHandler instance.OnMetadataOperationsChanged, handler

Syntax

Visual Basic
Public Event OnMetadataOperationsChanged As EventHandler(Of MetadataOperationsChangedEventArgs)
C#
public event EventHandler<MetadataOperationsChangedEventArgs> OnMetadataOperationsChanged
C++
public:
event EventHandler<MetadataOperationsChangedEventArgs^>^ OnMetadataOperationsChanged {
    void add (EventHandler<MetadataOperationsChangedEventArgs^>^ value);
    void remove (EventHandler<MetadataOperationsChangedEventArgs^>^ value);
}
J#
/** @event */
public void add_OnMetadataOperationsChanged (EventHandler<MetadataOperationsChangedEventArgs> value)

/** @event */
public void remove_OnMetadataOperationsChanged (EventHandler<MetadataOperationsChangedEventArgs> value)
JScript

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


MetadataUserControl.OnPropertiesViewed Event
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As MetadataUserControl
Dim handler As EventHandler(Of PropertiesEventArgs)

AddHandler instance.OnPropertiesViewed, handler

Syntax

Visual Basic
Public Event OnPropertiesViewed As EventHandler(Of PropertiesEventArgs)
C#
public event EventHandler<PropertiesEventArgs> OnPropertiesViewed
C++
public:
event EventHandler<PropertiesEventArgs^>^ OnPropertiesViewed {
    void add (EventHandler<PropertiesEventArgs^>^ value);
    void remove (EventHandler<PropertiesEventArgs^>^ value);
}
J#
/** @event */
public void add_OnPropertiesViewed (EventHandler<PropertiesEventArgs> value)

/** @event */
public void remove_OnPropertiesViewed (EventHandler<PropertiesEventArgs> value)
JScript

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

MetadataUserControl Class
MetadataUserControl Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesEventArgs Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As PropertiesEventArgs

Syntax

Visual Basic
Public NotInheritable Class PropertiesEventArgs
    Inherits EventArgs
C#
public sealed class PropertiesEventArgs : EventArgs
C++
public ref class PropertiesEventArgs sealed : public EventArgs
J#
public final class PropertiesEventArgs extends EventArgs
JScript
public final class PropertiesEventArgs extends EventArgs

Inheritance Hierarchy

System.Object
System.EventArgs
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.PropertiesEventArgs

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PropertiesEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesEventArgs Members
See Also Constructors Methods Properties
[image]

The following tables list the members exposed by the PropertiesEventArgs type.

Public Constructors

Name | Description
PropertiesEventArgs |
Top

Public Properties

 | Name | Description
public property | Html |
public property | Node |
public property | Wsdl |
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)
Top

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)
Top

See Also

Reference

PropertiesEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesEventArgs Constructor
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim wsdl As ServiceDescription
Dim node As MetadataRetrievalNode

Dim instance As New PropertiesEventArgs(wsdl, node)

Syntax

Visual Basic
Public Sub New ( _
    wsdl As ServiceDescription, _
    node As MetadataRetrievalNode _
)
C#
public PropertiesEventArgs (
    ServiceDescription wsdl,
    MetadataRetrievalNode node
)
C++
public:
PropertiesEventArgs (
    ServiceDescription^ wsdl,
    MetadataRetrievalNode^ node
)
J#
public PropertiesEventArgs (
    ServiceDescription wsdl,
    MetadataRetrievalNode node
)
JScript
public function PropertiesEventArgs (
    wsdl : ServiceDescription,
    node : MetadataRetrievalNode
)

Parameters

wsdl
node

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PropertiesEventArgs Class
PropertiesEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesEventArgs Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Equals | (inherited from Object)
public method | GetHashCode | (inherited from Object)
public method | GetType | (inherited from Object)
public method | ToString | (inherited from Object)

Protected Methods

 | Name | Description
protected method | Finalize | (inherited from Object)
protected method | MemberwiseClone | (inherited from Object)

See Also

Reference

PropertiesEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesEventArgs Properties
[image]

Public Properties

 | Name | Description
public property | Html |
public property | Node |
public property | Wsdl |

See Also

Reference

PropertiesEventArgs Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesEventArgs.Html Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As PropertiesEventArgs
Dim value As String

value = instance.Html

instance.Html = value

Syntax

Visual Basic
Public Property Html As String
C#
public string Html { get; set; }
C++
public:
property String^ Html {
    String^ get ();
    void set (String^ value);
}
J#
/** @property */
public String get_Html ()

/** @property */
public void set_Html (String value)
JScript
public function get Html () : String

public function set Html (value : String)

Property Value

Returns String.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PropertiesEventArgs Class
PropertiesEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesEventArgs.Node Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As PropertiesEventArgs
Dim value As MetadataRetrievalNode

value = instance.Node

Syntax

Visual Basic
Public ReadOnly Property Node As MetadataRetrievalNode
C#
public MetadataRetrievalNode Node { get; }
C++
public:
property MetadataRetrievalNode^ Node {
    MetadataRetrievalNode^ get ();
}
J#
/** @property */
public MetadataRetrievalNode get_Node ()
JScript
public function get Node () : MetadataRetrievalNode

Property Value

Returns MetadataRetrievalNode.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PropertiesEventArgs Class
PropertiesEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesEventArgs.Wsdl Property
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As PropertiesEventArgs
Dim value As ServiceDescription

value = instance.Wsdl

Syntax

Visual Basic
Public ReadOnly Property Wsdl As ServiceDescription
C#
public ServiceDescription Wsdl { get; }
C++
public:
property ServiceDescription^ Wsdl {
    ServiceDescription^ get ();
}
J#
/** @property */
public ServiceDescription get_Wsdl ()
JScript
public function get Wsdl () : ServiceDescription

Property Value

Returns ServiceDescription.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PropertiesEventArgs Class
PropertiesEventArgs Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesForm Class
See Also Members
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim instance As PropertiesForm

Syntax

Visual Basic
Public Class PropertiesForm
    Inherits Form
C#
public class PropertiesForm : Form
C++
public ref class PropertiesForm : public Form
J#
public class PropertiesForm extends Form
JScript
public class PropertiesForm extends Form

Inheritance Hierarchy

System.Object
System.MarshalByRefObject
System.ComponentModel.Component
System.Windows.Forms.Control
System.Windows.Forms.ScrollableControl
System.Windows.Forms.ContainerControl
System.Windows.Forms.Form
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.PropertiesForm

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PropertiesForm Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesForm Members
See Also Constructors Events Methods Properties Explicit Interface Implementations
[image]

The following tables list the members exposed by the PropertiesForm type.

Public Constructors

Name | Description
PropertiesForm |
Top

Public Properties (see also Protected Properties)

 | Name | Description
public property | AcceptButton | (inherited from Form)
public property | AccessibilityObject | (inherited from Control)
public property | AccessibleDefaultActionDescription | (inherited from Control)
public property | AccessibleDescription | (inherited from Control)
public property | AccessibleName | (inherited from Control)
public property | AccessibleRole | (inherited from Control)
public property | ActiveControl | (inherited from ContainerControl)
public property | ActiveMdiChild | (inherited from Form)
public property | AllowDrop | (inherited from Control)
public property | AllowTransparency | (inherited from Form)
public property | Anchor | (inherited from Control)
public property | AutoScale | Obsolete. (inherited from Form)
public property | AutoScaleBaseSize | (inherited from Form)
public property | AutoScaleDimensions | (inherited from ContainerControl)
public property | AutoScaleMode | (inherited from ContainerControl)
public property | AutoScroll | Overridden. (inherited from ScrollableControl)
public property | AutoScrollMargin | (inherited from ScrollableControl)
public property | AutoScrollMinSize | (inherited from ScrollableControl)
public property | AutoScrollOffset | (inherited from Control)
public property | AutoScrollPosition | (inherited from ScrollableControl)
public property | AutoSize | Overridden. (inherited from Control)
public property | AutoSizeMode | (inherited from Form)
public property | AutoValidate | Overridden. (inherited from ContainerControl)
public property | BackColor | Overridden. (inherited from Control)
public property | BackgroundImage | (inherited from Control)
public property | BackgroundImageLayout | (inherited from Control)
public property | BindingContext | Overridden. (inherited from Control)
public property | Bottom | (inherited from Control)
public property | Bounds | (inherited from Control)
public property | CancelButton | (inherited from Form)
public property | CanFocus | (inherited from Control)
public property | CanSelect | (inherited from Control)
public property | Capture | (inherited from Control)
public property | CausesValidation | (inherited from Control)
public property | ClientRectangle | (inherited from Control)
public property | ClientSize | (inherited from Form)
public property | CompanyName | (inherited from Control)
public property | Container | (inherited from Component)
public property | ContainsFocus | (inherited from Control)
public property | ContextMenu | (inherited from Control)
public property | ContextMenuStrip | (inherited from Control)
public property | ControlBox | (inherited from Form)
public property | Controls | (inherited from Control)
public property | Created | (inherited from Control)
public property | CurrentAutoScaleDimensions | (inherited from ContainerControl)
public property | Cursor | (inherited from Control)
public property | DataBindings | (inherited from Control)
public property | DesktopBounds | (inherited from Form)
public property | DesktopLocation | (inherited from Form)
public property | DialogResult | (inherited from Form)
public property | DisplayRectangle | Overridden. (inherited from Control)
public property | Disposing | (inherited from Control)
public property | Dock | (inherited from Control)
public property | DockPadding | (inherited from ScrollableControl)
public property | Enabled | (inherited from Control)
public property | Focused | (inherited from Control)
public property | Font | (inherited from Control)
public property | ForeColor | (inherited from Control)
public property | FormBorderStyle | (inherited from Form)
public property | Handle | (inherited from Control)
public property | HasChildren | (inherited from Control)
public property | Height | (inherited from Control)
public property | HelpButton | (inherited from Form)
public property | HorizontalScroll | (inherited from ScrollableControl)
public property | Icon | (inherited from Form)
public property | ImeMode | (inherited from Control)
public property | InvokeRequired | (inherited from Control)
public property | IsAccessible | (inherited from Control)
public property | IsDisposed | (inherited from Control)
public property | IsHandleCreated | (inherited from Control)
public property | IsMdiChild | (inherited from Form)
public property | IsMdiContainer | (inherited from Form)
public property | IsMirrored | (inherited from Control)
public property | IsRestrictedWindow | (inherited from Form)
public property | KeyPreview | (inherited from Form)
public property | LayoutEngine | (inherited from Control)
public property | Left | (inherited from Control)
public property | Location | (inherited from Form)
public property | MainMenuStrip | (inherited from Form)
public property | Margin | (inherited from Form)
public property | MaximizeBox | (inherited from Form)
public property | MaximumSize | Overridden. (inherited from Control)
public property | MdiChildren | (inherited from Form)
public property | MdiParent | (inherited from Form)
public property | Menu | (inherited from Form)
public property | MergedMenu | (inherited from Form)
public property | MinimizeBox | (inherited from Form)
public property | MinimumSize | Overridden. (inherited from Control)
public property | Modal | (inherited from Form)
public property | Name | (inherited from Control)
public property | Opacity | (inherited from Form)
public property | OwnedForms | (inherited from Form)
public property | Owner | (inherited from Form)
public property | Padding | (inherited from Control)
public property | Parent | (inherited from Control)
public property | ParentForm | (inherited from ContainerControl)
public property | PreferredSize | (inherited from Control)
public property | ProductName | (inherited from Control)
public property | ProductVersion | (inherited from Control)
public property | RecreatingHandle | (inherited from Control)
public property | Region | (inherited from Control)
public property | RestoreBounds | (inherited from Form)
public property | Right | (inherited from Control)
public property | RightToLeft | (inherited from Control)
public property | RightToLeftLayout | (inherited from Form)
public property | ShowIcon | (inherited from Form)
public property | ShowInTaskbar | (inherited from Form)
public property | Site | Overridden. (inherited from Component)
public property | Size | (inherited from Form)
public property | SizeGripStyle | (inherited from Form)
public property | StartPosition | (inherited from Form)
public property | TabIndex | (inherited from Form)
public property | TabStop | (inherited from Form)
public property | Tag | (inherited from Control)
public property | Text | Overridden. (inherited from Control)
public property | Top | (inherited from Control)
public property | TopLevel | (inherited from Form)
public property | TopLevelControl | (inherited from Control)
public property | TopMost | (inherited from Form)
public property | TransparencyKey | (inherited from Form)
public property | UseWaitCursor | (inherited from Control)
public property | VerticalScroll | (inherited from ScrollableControl)
public property | Visible | (inherited from Control)
public property | Width | (inherited from Control)
public property | WindowState | (inherited from Form)
public property | WindowTarget | (inherited from Control)
Top

Protected Properties

 | Name | Description
protected property | AutoScaleFactor | (inherited from ContainerControl)
protected property | CanRaiseEvents | Overridden. (inherited from Component)
protected property | CreateParams | Overridden. (inherited from ContainerControl)
protected property | DefaultCursor | (inherited from Control)
protected property | DefaultImeMode | Overridden. (inherited from Control)
protected property | DefaultMargin | (inherited from Control)
protected property | DefaultMaximumSize | (inherited from Control)
protected property | DefaultMinimumSize | (inherited from Control)
protected property | DefaultPadding | (inherited from Control)
protected property | DefaultSize | Overridden. (inherited from Control)
protected property | DesignMode | (inherited from Component)
protected property | DoubleBuffered | (inherited from Control)
protected property | Events | (inherited from Component)
protected property | FontHeight | (inherited from Control)
protected property | HScroll | (inherited from ScrollableControl)
protected property | MaximizedBounds | (inherited from Form)
protected property | ResizeRedraw | (inherited from Control)
protected property | ScaleChildren | (inherited from Control)
protected property | ShowWithoutActivation | (inherited from Form)
protected property | VScroll | (inherited from ScrollableControl)
Top

Public Methods (see also Protected Methods)

 | Name | Description
public method | Activate | (inherited from Form)
public method | AddOwnedForm | (inherited from Form)
public method | BeginInvoke | (inherited from Control)
public method | BeginInvoke | (inherited from Control)
public method | BringToFront | (inherited from Control)
public method | Close | (inherited from Form)
public method | Contains | (inherited from Control)
public method | CreateControl | (inherited from Control)
public method | CreateGraphics | (inherited from Control)
public method | CreateObjRef | (inherited from MarshalByRefObject)
public method | Dispose | (inherited from Component)
public method | DoDragDrop | (inherited from Control)
public method | DrawToBitmap | (inherited from Control)
public method | EndInvoke | (inherited from Control)
public method | Equals | (inherited from Object)
public method | FindForm | (inherited from Control)
public method | Focus | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetContainerControl | (inherited from Control)
public method | GetHashCode | (inherited from Object)
public method | GetLifetimeService | (inherited from MarshalByRefObject)
public method | GetNextControl | (inherited from Control)
public method | GetPreferredSize | (inherited from Control)
public method | GetType | (inherited from Object)
public method | Hide | (inherited from Control)
public method | InitializeLifetimeService | (inherited from MarshalByRefObject)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | LayoutMdi | (inherited from Form)
public method | PerformAutoScale | (inherited from ContainerControl)
public method | PerformLayout | (inherited from Control)
public method | PerformLayout | (inherited from Control)
public method | PointToClient | (inherited from Control)
public method | PointToScreen | (inherited from Control)
public method | PreProcessControlMessage | (inherited from Control)
public method | PreProcessMessage | (inherited from Control)
public method | RectangleToClient | (inherited from Control)
public method | RectangleToScreen | (inherited from Control)
public method | Refresh | (inherited from Control)
public method | RemoveOwnedForm | (inherited from Form)
public method | ResetBackColor | (inherited from Control)
public method | ResetBindings | (inherited from Control)
public method | ResetCursor | (inherited from Control)
public method | ResetFont | (inherited from Control)
public method | ResetForeColor | (inherited from Control)
public method | ResetImeMode | (inherited from Control)
public method | ResetRightToLeft | (inherited from Control)
public method | ResetText | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | Scale | (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | ScrollControlIntoView | (inherited from ScrollableControl)
public method | Select | (inherited from Control)
public method | SelectNextControl | (inherited from Control)
public method | SendToBack | (inherited from Control)
public method | SetAutoScrollMargin | (inherited from ScrollableControl)
public method | SetBounds | (inherited from Control)
public method | SetBounds | (inherited from Control)
public method | SetDesktopBounds | (inherited from Form)
public method | SetDesktopLocation | (inherited from Form)
public method | Show | (inherited from Control)
public method | Show | (inherited from Form)
public method | ShowDialog | (inherited from Form)
public method | ShowDialog | (inherited from Form)
public method | SuspendLayout | (inherited from Control)
public method | ToString | Overridden. (inherited from Component)
public method | Update | (inherited from Control)
public method | Validate | (inherited from ContainerControl)
public method | Validate | (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)
Top

Protected Methods

 | Name | Description
protected method | AccessibilityNotifyClients | (inherited from Control)
protected method | ActivateMdiChild | (inherited from Form)
protected method | AdjustFormScrollbars | Overridden. (inherited from ContainerControl)
protected method | ApplyAutoScaling | Obsolete. (inherited from Form)
protected method | CenterToParent | (inherited from Form)
protected method | CenterToScreen | (inherited from Form)
protected method | CreateAccessibilityInstance | (inherited from Control)
protected method | CreateControlsInstance | Overridden. (inherited from Control)
protected method | CreateHandle | Overridden. (inherited from Control)
protected method | DefWndProc | Overridden. (inherited from Control)
protected method | DestroyHandle | (inherited from Control)
protected method | Dispose | Overridden.
protected method | Finalize | Overridden. (inherited from Object)
protected method | GetAccessibilityObjectById | (inherited from Control)
protected method | GetAutoSizeMode | (inherited from Control)
protected method | GetScaledBounds | Overridden. (inherited from Control)
protected method | GetScrollState | (inherited from ScrollableControl)
protected method | GetService | (inherited from Component)
protected method | GetStyle | (inherited from Control)
protected method | GetTopLevel | (inherited from Control)
protected method | InitLayout | (inherited from Control)
protected method | InvokeGotFocus | (inherited from Control)
protected method | InvokeLostFocus | (inherited from Control)
protected method | InvokeOnClick | (inherited from Control)
protected method | InvokePaint | (inherited from Control)
protected method | InvokePaintBackground | (inherited from Control)
protected method | IsInputChar | (inherited from Control)
protected method | IsInputKey | (inherited from Control)
protected method | MemberwiseClone | (inherited from MarshalByRefObject)
protected method | MemberwiseClone | (inherited from Object)
protected method | NotifyInvalidate | (inherited from Control)
protected method | OnActivated | (inherited from Form)
protected method | OnAutoSizeChanged | (inherited from Control)
protected method | OnAutoValidateChanged | (inherited from ContainerControl)
protected method | OnBackColorChanged | (inherited from Control)
protected method | OnBackgroundImageChanged | Overridden. (inherited from Control)
protected method | OnBackgroundImageLayoutChanged | Overridden. (inherited from Control)
protected method | OnBindingContextChanged | (inherited from Control)
protected method | OnCausesValidationChanged | (inherited from Control)
protected method | OnChangeUICues | (inherited from Control)
protected method | OnClick | (inherited from Control)
protected method | OnClientSizeChanged | (inherited from Control)
protected method | OnClosed | (inherited from Form)
protected method | OnClosing | Overridden.
protected method | OnContextMenuChanged | (inherited from Control)
protected method | OnContextMenuStripChanged | (inherited from Control)
protected method | OnControlAdded | (inherited from Control)
protected method | OnControlRemoved | (inherited from Control)
protected method | OnCreateControl | Overridden. (inherited from ContainerControl)
protected method | OnCursorChanged | (inherited from Control)
protected method | OnDeactivate | (inherited from Form)
protected method | OnDockChanged | (inherited from Control)
protected method | OnDoubleClick | (inherited from Control)
protected method | OnDragDrop | (inherited from Control)
protected method | OnDragEnter | (inherited from Control)
protected method | OnDragLeave | (inherited from Control)
protected method | OnDragOver | (inherited from Control)
protected method | OnEnabledChanged | Overridden. (inherited from Control)
protected method | OnEnter | Overridden. (inherited from Control)
protected method | OnFontChanged | Overridden. (inherited from ContainerControl)
protected method | OnForeColorChanged | (inherited from Control)
protected method | OnFormClosed | (inherited from Form)
protected method | OnFormClosing | (inherited from Form)
protected method | OnGiveFeedback | (inherited from Control)
protected method | OnGotFocus | (inherited from Control)
protected method | OnHandleCreated | Overridden. (inherited from Control)
protected method | OnHandleDestroyed | Overridden. (inherited from Control)
protected method | OnHelpButtonClicked | (inherited from Form)
protected method | OnHelpRequested | (inherited from Control)
protected method | OnImeModeChanged | (inherited from Control)
protected method | OnInputLanguageChanged | (inherited from Form)
protected method | OnInputLanguageChanging | (inherited from Form)
protected method | OnInvalidated | (inherited from Control)
protected method | OnKeyDown | (inherited from Control)
protected method | OnKeyPress | (inherited from Control)
protected method | OnKeyUp | (inherited from Control)
protected method | OnLayout | Overridden. (inherited from ContainerControl)
protected method | OnLeave | (inherited from Control)
protected method | OnLoad | (inherited from Form)
protected method | OnLocationChanged | (inherited from Control)
protected method | OnLostFocus | (inherited from Control)
protected method | OnMarginChanged | (inherited from Control)
protected method | OnMaximizedBoundsChanged | (inherited from Form)
protected method | OnMaximumSizeChanged | (inherited from Form)
protected method | OnMdiChildActivate | (inherited from Form)
protected method | OnMenuComplete | (inherited from Form)
protected method | OnMenuStart | (inherited from Form)
protected method | OnMinimumSizeChanged | (inherited from Form)
protected method | OnMouseCaptureChanged | (inherited from Control)
protected method | OnMouseClick | (inherited from Control)
protected method | OnMouseDoubleClick | (inherited from Control)
protected method | OnMouseDown | (inherited from Control)
protected method | OnMouseEnter | (inherited from Control)
protected method | OnMouseHover | (inherited from Control)
protected method | OnMouseLeave | (inherited from Control)
protected method | OnMouseMove | (inherited from Control)
protected method | OnMouseUp | (inherited from Control)
protected method | OnMouseWheel | Overridden. (inherited from Control)
protected method | OnMove | (inherited from Control)
protected method | OnNotifyMessage | (inherited from Control)
protected method | OnPaddingChanged | Overridden. (inherited from Control)
protected method | OnPaint | Overridden. (inherited from Control)
protected method | OnPaintBackground | Overridden. (inherited from Control)
protected method | OnParentBackColorChanged | (inherited from Control)
protected method | OnParentBackgroundImageChanged | (inherited from Control)
protected method | OnParentBindingContextChanged | (inherited from Control)
protected method | OnParentChanged | Overridden. (inherited from Control)
protected method | OnParentCursorChanged | (inherited from Control)
protected method | OnParentEnabledChanged | (inherited from Control)
protected method | OnParentFontChanged | (inherited from Control)
protected method | OnParentForeColorChanged | (inherited from Control)
protected method | OnParentRightToLeftChanged | (inherited from Control)
protected method | OnParentVisibleChanged | (inherited from Control)
protected method | OnPreviewKeyDown | (inherited from Control)
protected method | OnPrint | (inherited from Control)
protected method | OnQueryContinueDrag | (inherited from Control)
protected method | OnRegionChanged | (inherited from Control)
protected method | OnResize | Overridden. (inherited from Control)
protected method | OnResizeBegin | (inherited from Form)
protected method | OnResizeEnd | (inherited from Form)
protected method | OnRightToLeftChanged | Overridden. (inherited from Control)
protected method | OnRightToLeftLayoutChanged | (inherited from Form)
protected method | OnScroll | (inherited from ScrollableControl)
protected method | OnShown | (inherited from Form)
protected method | OnSizeChanged | (inherited from Control)
protected method | OnStyleChanged | Overridden. (inherited from Control)
protected method | OnSystemColorsChanged | (inherited from Control)
protected method | OnTabIndexChanged | (inherited from Control)
protected method | OnTabStopChanged | (inherited from Control)
protected method | OnTextChanged | Overridden. (inherited from Control)
protected method | OnValidated | (inherited from Control)
protected method | OnValidating | (inherited from Control)
protected method | OnVisibleChanged | Overridden. (inherited from ScrollableControl)
protected method | ProcessCmdKey | Overridden. (inherited from ContainerControl)
protected method | ProcessDialogChar | Overridden. (inherited from ContainerControl)
protected method | ProcessDialogKey | Overridden. (inherited from ContainerControl)
protected method | ProcessKeyEventArgs | (inherited from Control)
protected method | ProcessKeyPreview | Overridden. (inherited from Control)
protected method | ProcessTabKey | Overridden. (inherited from ContainerControl)
protected method | RaiseDragEvent | (inherited from Control)
protected method | RaiseKeyEvent | (inherited from Control)
protected method | RaiseMouseEvent | (inherited from Control)
protected method | RaisePaintEvent | (inherited from Control)
protected method | RecreateHandle | (inherited from Control)
protected method | ResetMouseEventArgs | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateHorizontal | (inherited from Control)
protected method | RtlTranslateLeftRight | (inherited from Control)
protected method | ScaleControl | Overridden. (inherited from ScrollableControl)
protected method | ScaleCore | Overridden. (inherited from ScrollableControl)
protected method | ScrollToControl | (inherited from ScrollableControl)
protected method | Select | Overridden. (inherited from ContainerControl)
protected method | SetAutoSizeMode | (inherited from Control)
protected method | SetBoundsCore | Overridden. (inherited from Control)
protected method | SetClientSizeCore | Overridden. (inherited from Control)
protected method | SetDisplayRectLocation | (inherited from ScrollableControl)
protected method | SetScrollState | (inherited from ScrollableControl)
protected method | SetStyle | (inherited from Control)
protected method | SetTopLevel | (inherited from Control)
protected method | SetVisibleCore | Overridden. (inherited from Control)
protected method | SizeFromClientSize | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateDefaultButton | Overridden. (inherited from ContainerControl)
protected method | UpdateStyles | (inherited from Control)
protected method | UpdateZOrder | (inherited from Control)
protected method | WndProc | Overridden. (inherited from ContainerControl)
Top

Public Events

 | Name | Description
public event | Activated | (inherited from Form)
public event | AutoSizeChanged | (inherited from Form)
public event | AutoValidateChanged | (inherited from Form)
public event | BackColorChanged | (inherited from Control)
public event | BackgroundImageChanged | (inherited from Control)
public event | BackgroundImageLayoutChanged | (inherited from Control)
public event | BindingContextChanged | (inherited from Control)
public event | CausesValidationChanged | (inherited from Control)
public event | ChangeUICues | (inherited from Control)
public event | Click | (inherited from Control)
public event | ClientSizeChanged | (inherited from Control)
public event | Closed | (inherited from Form)
public event | Closing | (inherited from Form)
public event | ContextMenuChanged | (inherited from Control)
public event | ContextMenuStripChanged | (inherited from Control)
public event | ControlAdded | (inherited from Control)
public event | ControlRemoved | (inherited from Control)
public event | CursorChanged | (inherited from Control)
public event | Deactivate | (inherited from Form)
public event | Disposed | (inherited from Component)
public event | DockChanged | (inherited from Control)
public event | DoubleClick | (inherited from Control)
public event | DragDrop | (inherited from Control)
public event | DragEnter | (inherited from Control)
public event | DragLeave | (inherited from Control)
public event | DragOver | (inherited from Control)
public event | EnabledChanged | (inherited from Control)
public event | Enter | (inherited from Control)
public event | FontChanged | (inherited from Control)
public event | ForeColorChanged | (inherited from Control)
public event | FormClosed | (inherited from Form)
public event | FormClosing | (inherited from Form)
public event | GiveFeedback | (inherited from Control)
public event | GotFocus | (inherited from Control)
public event | HandleCreated | (inherited from Control)
public event | HandleDestroyed | (inherited from Control)
public event | HelpButtonClicked | (inherited from Form)
public event | HelpRequested | (inherited from Control)
public event | ImeModeChanged | (inherited from Control)
public event | InputLanguageChanged | (inherited from Form)
public event | InputLanguageChanging | (inherited from Form)
public event | Invalidated | (inherited from Control)
public event | KeyDown | (inherited from Control)
public event | KeyPress | (inherited from Control)
public event | KeyUp | (inherited from Control)
public event | Layout | (inherited from Control)
public event | Leave | (inherited from Control)
public event | Load | (inherited from Form)
public event | LocationChanged | (inherited from Control)
public event | LostFocus | (inherited from Control)
public event | MarginChanged | (inherited from Form)
public event | MaximizedBoundsChanged | (inherited from Form)
public event | MaximumSizeChanged | (inherited from Form)
public event | MdiChildActivate | (inherited from Form)
public event | MenuComplete | (inherited from Form)
public event | MenuStart | (inherited from Form)
public event | MinimumSizeChanged | (inherited from Form)
public event | MouseCaptureChanged | (inherited from Control)
public event | MouseClick | (inherited from Control)
public event | MouseDoubleClick | (inherited from Control)
public event | MouseDown | (inherited from Control)
public event | MouseEnter | (inherited from Control)
public event | MouseHover | (inherited from Control)
public event | MouseLeave | (inherited from Control)
public event | MouseMove | (inherited from Control)
public event | MouseUp | (inherited from Control)
public event | MouseWheel | (inherited from Control)
public event | Move | (inherited from Control)
public event | PaddingChanged | (inherited from Control)
public event | Paint | (inherited from Control)
public event | ParentChanged | (inherited from Control)
public event | PreviewKeyDown | (inherited from Control)
public event | QueryAccessibilityHelp | (inherited from Control)
public event | QueryContinueDrag | (inherited from Control)
public event | RegionChanged | (inherited from Control)
public event | Resize | (inherited from Control)
public event | ResizeBegin | (inherited from Form)
public event | ResizeEnd | (inherited from Form)
public event | RightToLeftChanged | (inherited from Control)
public event | RightToLeftLayoutChanged | (inherited from Form)
public event | Scroll | (inherited from ScrollableControl)
public event | Shown | (inherited from Form)
public event | SizeChanged | (inherited from Control)
public event | StyleChanged | (inherited from Control)
public event | SystemColorsChanged | (inherited from Control)
public event | TabIndexChanged | (inherited from Form)
public event | TabStopChanged | (inherited from Form)
public event | TextChanged | (inherited from Control)
public event | Validated | (inherited from Control)
public event | Validating | (inherited from Control)
public event | VisibleChanged | (inherited from Control)
Top

Explicit Interface Implementations

Name | Description
ActivateControl | (inherited from ContainerControl)
OnDragDrop | (inherited from Control)
OnDragEnter | (inherited from Control)
OnDragLeave | (inherited from Control)
OnDragOver | (inherited from Control)
Top

See Also

Reference

PropertiesForm Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesForm Constructor
[image]

Initializes a new instance of the PropertiesForm Class.Initializes a new instance of the PropertiesForm Class.

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim html As String
Dim wsdl As ServiceDescription

Dim instance As New PropertiesForm(html, wsdl)

Syntax

Visual Basic
Public Sub New ( _
    html As String, _
    wsdl As ServiceDescription _
)
C#
public PropertiesForm (
    string html,
    ServiceDescription wsdl
)
C++
public:
PropertiesForm (
    String^ html,
    ServiceDescription^ wsdl
)
J#
public PropertiesForm (
    String html,
    ServiceDescription wsdl
)
JScript
public function PropertiesForm (
    html : String,
    wsdl : ServiceDescription
)

Remarks

The default constructor initializes any fields to their default values.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PropertiesForm Class
PropertiesForm Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesForm Methods
[image]

Public Methods (see also Protected Methods)

 | Name | Description
public method | Activate | (inherited from Form)
public method | AddOwnedForm | (inherited from Form)
public method | BeginInvoke | (inherited from Control)
public method | BeginInvoke | (inherited from Control)
public method | BringToFront | (inherited from Control)
public method | Close | (inherited from Form)
public method | Contains | (inherited from Control)
public method | CreateControl | (inherited from Control)
public method | CreateGraphics | (inherited from Control)
public method | CreateObjRef | (inherited from MarshalByRefObject)
public method | Dispose | (inherited from Component)
public method | DoDragDrop | (inherited from Control)
public method | DrawToBitmap | (inherited from Control)
public method | EndInvoke | (inherited from Control)
public method | Equals | (inherited from Object)
public method | FindForm | (inherited from Control)
public method | Focus | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetChildAtPoint | (inherited from Control)
public method | GetContainerControl | (inherited from Control)
public method | GetHashCode | (inherited from Object)
public method | GetLifetimeService | (inherited from MarshalByRefObject)
public method | GetNextControl | (inherited from Control)
public method | GetPreferredSize | (inherited from Control)
public method | GetType | (inherited from Object)
public method | Hide | (inherited from Control)
public method | InitializeLifetimeService | (inherited from MarshalByRefObject)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invalidate | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | Invoke | (inherited from Control)
public method | LayoutMdi | (inherited from Form)
public method | PerformAutoScale | (inherited from ContainerControl)
public method | PerformLayout | (inherited from Control)
public method | PerformLayout | (inherited from Control)
public method | PointToClient | (inherited from Control)
public method | PointToScreen | (inherited from Control)
public method | PreProcessControlMessage | (inherited from Control)
public method | PreProcessMessage | (inherited from Control)
public method | RectangleToClient | (inherited from Control)
public method | RectangleToScreen | (inherited from Control)
public method | Refresh | (inherited from Control)
public method | RemoveOwnedForm | (inherited from Form)
public method | ResetBackColor | (inherited from Control)
public method | ResetBindings | (inherited from Control)
public method | ResetCursor | (inherited from Control)
public method | ResetFont | (inherited from Control)
public method | ResetForeColor | (inherited from Control)
public method | ResetImeMode | (inherited from Control)
public method | ResetRightToLeft | (inherited from Control)
public method | ResetText | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | ResumeLayout | (inherited from Control)
public method | Scale | (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | Scale | Obsolete. (inherited from Control)
public method | ScrollControlIntoView | (inherited from ScrollableControl)
public method | Select | (inherited from Control)
public method | SelectNextControl | (inherited from Control)
public method | SendToBack | (inherited from Control)
public method | SetAutoScrollMargin | (inherited from ScrollableControl)
public method | SetBounds | (inherited from Control)
public method | SetBounds | (inherited from Control)
public method | SetDesktopBounds | (inherited from Form)
public method | SetDesktopLocation | (inherited from Form)
public method | Show | (inherited from Control)
public method | Show | (inherited from Form)
public method | ShowDialog | (inherited from Form)
public method | ShowDialog | (inherited from Form)
public method | SuspendLayout | (inherited from Control)
public method | ToString | Overridden. (inherited from Component)
public method | Update | (inherited from Control)
public method | Validate | (inherited from ContainerControl)
public method | Validate | (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)
public method | ValidateChildren | Overridden. (inherited from ContainerControl)

Protected Methods

 | Name | Description
protected method | AccessibilityNotifyClients | (inherited from Control)
protected method | ActivateMdiChild | (inherited from Form)
protected method | AdjustFormScrollbars | Overridden. (inherited from ContainerControl)
protected method | ApplyAutoScaling | Obsolete. (inherited from Form)
protected method | CenterToParent | (inherited from Form)
protected method | CenterToScreen | (inherited from Form)
protected method | CreateAccessibilityInstance | (inherited from Control)
protected method | CreateControlsInstance | Overridden. (inherited from Control)
protected method | CreateHandle | Overridden. (inherited from Control)
protected method | DefWndProc | Overridden. (inherited from Control)
protected method | DestroyHandle | (inherited from Control)
protected method | Dispose | Overridden.
protected method | Finalize | Overridden. (inherited from Object)
protected method | GetAccessibilityObjectById | (inherited from Control)
protected method | GetAutoSizeMode | (inherited from Control)
protected method | GetScaledBounds | Overridden. (inherited from Control)
protected method | GetScrollState | (inherited from ScrollableControl)
protected method | GetService | (inherited from Component)
protected method | GetStyle | (inherited from Control)
protected method | GetTopLevel | (inherited from Control)
protected method | InitLayout | (inherited from Control)
protected method | InvokeGotFocus | (inherited from Control)
protected method | InvokeLostFocus | (inherited from Control)
protected method | InvokeOnClick | (inherited from Control)
protected method | InvokePaint | (inherited from Control)
protected method | InvokePaintBackground | (inherited from Control)
protected method | IsInputChar | (inherited from Control)
protected method | IsInputKey | (inherited from Control)
protected method | MemberwiseClone | (inherited from MarshalByRefObject)
protected method | MemberwiseClone | (inherited from Object)
protected method | NotifyInvalidate | (inherited from Control)
protected method | OnActivated | (inherited from Form)
protected method | OnAutoSizeChanged | (inherited from Control)
protected method | OnAutoValidateChanged | (inherited from ContainerControl)
protected method | OnBackColorChanged | (inherited from Control)
protected method | OnBackgroundImageChanged | Overridden. (inherited from Control)
protected method | OnBackgroundImageLayoutChanged | Overridden. (inherited from Control)
protected method | OnBindingContextChanged | (inherited from Control)
protected method | OnCausesValidationChanged | (inherited from Control)
protected method | OnChangeUICues | (inherited from Control)
protected method | OnClick | (inherited from Control)
protected method | OnClientSizeChanged | (inherited from Control)
protected method | OnClosed | (inherited from Form)
protected method | OnClosing | Overridden.
protected method | OnContextMenuChanged | (inherited from Control)
protected method | OnContextMenuStripChanged | (inherited from Control)
protected method | OnControlAdded | (inherited from Control)
protected method | OnControlRemoved | (inherited from Control)
protected method | OnCreateControl | Overridden. (inherited from ContainerControl)
protected method | OnCursorChanged | (inherited from Control)
protected method | OnDeactivate | (inherited from Form)
protected method | OnDockChanged | (inherited from Control)
protected method | OnDoubleClick | (inherited from Control)
protected method | OnDragDrop | (inherited from Control)
protected method | OnDragEnter | (inherited from Control)
protected method | OnDragLeave | (inherited from Control)
protected method | OnDragOver | (inherited from Control)
protected method | OnEnabledChanged | Overridden. (inherited from Control)
protected method | OnEnter | Overridden. (inherited from Control)
protected method | OnFontChanged | Overridden. (inherited from ContainerControl)
protected method | OnForeColorChanged | (inherited from Control)
protected method | OnFormClosed | (inherited from Form)
protected method | OnFormClosing | (inherited from Form)
protected method | OnGiveFeedback | (inherited from Control)
protected method | OnGotFocus | (inherited from Control)
protected method | OnHandleCreated | Overridden. (inherited from Control)
protected method | OnHandleDestroyed | Overridden. (inherited from Control)
protected method | OnHelpButtonClicked | (inherited from Form)
protected method | OnHelpRequested | (inherited from Control)
protected method | OnImeModeChanged | (inherited from Control)
protected method | OnInputLanguageChanged | (inherited from Form)
protected method | OnInputLanguageChanging | (inherited from Form)
protected method | OnInvalidated | (inherited from Control)
protected method | OnKeyDown | (inherited from Control)
protected method | OnKeyPress | (inherited from Control)
protected method | OnKeyUp | (inherited from Control)
protected method | OnLayout | Overridden. (inherited from ContainerControl)
protected method | OnLeave | (inherited from Control)
protected method | OnLoad | (inherited from Form)
protected method | OnLocationChanged | (inherited from Control)
protected method | OnLostFocus | (inherited from Control)
protected method | OnMarginChanged | (inherited from Control)
protected method | OnMaximizedBoundsChanged | (inherited from Form)
protected method | OnMaximumSizeChanged | (inherited from Form)
protected method | OnMdiChildActivate | (inherited from Form)
protected method | OnMenuComplete | (inherited from Form)
protected method | OnMenuStart | (inherited from Form)
protected method | OnMinimumSizeChanged | (inherited from Form)
protected method | OnMouseCaptureChanged | (inherited from Control)
protected method | OnMouseClick | (inherited from Control)
protected method | OnMouseDoubleClick | (inherited from Control)
protected method | OnMouseDown | (inherited from Control)
protected method | OnMouseEnter | (inherited from Control)
protected method | OnMouseHover | (inherited from Control)
protected method | OnMouseLeave | (inherited from Control)
protected method | OnMouseMove | (inherited from Control)
protected method | OnMouseUp | (inherited from Control)
protected method | OnMouseWheel | Overridden. (inherited from Control)
protected method | OnMove | (inherited from Control)
protected method | OnNotifyMessage | (inherited from Control)
protected method | OnPaddingChanged | Overridden. (inherited from Control)
protected method | OnPaint | Overridden. (inherited from Control)
protected method | OnPaintBackground | Overridden. (inherited from Control)
protected method | OnParentBackColorChanged | (inherited from Control)
protected method | OnParentBackgroundImageChanged | (inherited from Control)
protected method | OnParentBindingContextChanged | (inherited from Control)
protected method | OnParentChanged | Overridden. (inherited from Control)
protected method | OnParentCursorChanged | (inherited from Control)
protected method | OnParentEnabledChanged | (inherited from Control)
protected method | OnParentFontChanged | (inherited from Control)
protected method | OnParentForeColorChanged | (inherited from Control)
protected method | OnParentRightToLeftChanged | (inherited from Control)
protected method | OnParentVisibleChanged | (inherited from Control)
protected method | OnPreviewKeyDown | (inherited from Control)
protected method | OnPrint | (inherited from Control)
protected method | OnQueryContinueDrag | (inherited from Control)
protected method | OnRegionChanged | (inherited from Control)
protected method | OnResize | Overridden. (inherited from Control)
protected method | OnResizeBegin | (inherited from Form)
protected method | OnResizeEnd | (inherited from Form)
protected method | OnRightToLeftChanged | Overridden. (inherited from Control)
protected method | OnRightToLeftLayoutChanged | (inherited from Form)
protected method | OnScroll | (inherited from ScrollableControl)
protected method | OnShown | (inherited from Form)
protected method | OnSizeChanged | (inherited from Control)
protected method | OnStyleChanged | Overridden. (inherited from Control)
protected method | OnSystemColorsChanged | (inherited from Control)
protected method | OnTabIndexChanged | (inherited from Control)
protected method | OnTabStopChanged | (inherited from Control)
protected method | OnTextChanged | Overridden. (inherited from Control)
protected method | OnValidated | (inherited from Control)
protected method | OnValidating | (inherited from Control)
protected method | OnVisibleChanged | Overridden. (inherited from ScrollableControl)
protected method | ProcessCmdKey | Overridden. (inherited from ContainerControl)
protected method | ProcessDialogChar | Overridden. (inherited from ContainerControl)
protected method | ProcessDialogKey | Overridden. (inherited from ContainerControl)
protected method | ProcessKeyEventArgs | (inherited from Control)
protected method | ProcessKeyPreview | Overridden. (inherited from Control)
protected method | ProcessTabKey | Overridden. (inherited from ContainerControl)
protected method | RaiseDragEvent | (inherited from Control)
protected method | RaiseKeyEvent | (inherited from Control)
protected method | RaiseMouseEvent | (inherited from Control)
protected method | RaisePaintEvent | (inherited from Control)
protected method | RecreateHandle | (inherited from Control)
protected method | ResetMouseEventArgs | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateAlignment | (inherited from Control)
protected method | RtlTranslateHorizontal | (inherited from Control)
protected method | RtlTranslateLeftRight | (inherited from Control)
protected method | ScaleControl | Overridden. (inherited from ScrollableControl)
protected method | ScaleCore | Overridden. (inherited from ScrollableControl)
protected method | ScrollToControl | (inherited from ScrollableControl)
protected method | Select | Overridden. (inherited from ContainerControl)
protected method | SetAutoSizeMode | (inherited from Control)
protected method | SetBoundsCore | Overridden. (inherited from Control)
protected method | SetClientSizeCore | Overridden. (inherited from Control)
protected method | SetDisplayRectLocation | (inherited from ScrollableControl)
protected method | SetScrollState | (inherited from ScrollableControl)
protected method | SetStyle | (inherited from Control)
protected method | SetTopLevel | (inherited from Control)
protected method | SetVisibleCore | Overridden. (inherited from Control)
protected method | SizeFromClientSize | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateBounds | (inherited from Control)
protected method | UpdateDefaultButton | Overridden. (inherited from ContainerControl)
protected method | UpdateStyles | (inherited from Control)
protected method | UpdateZOrder | (inherited from Control)
protected method | WndProc | Overridden. (inherited from ContainerControl)

Explicit Interface Implementations

Name | Description
ActivateControl | (inherited from ContainerControl)
OnDragDrop | (inherited from Control)
OnDragEnter | (inherited from Control)
OnDragLeave | (inherited from Control)
OnDragOver | (inherited from Control)

See Also

Reference

PropertiesForm Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesForm.Dispose Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim disposing As Boolean

Me.Dispose(disposing)

Syntax

Visual Basic
Protected Overrides Sub Dispose ( _
    disposing As Boolean _
)
C#
protected override void Dispose (
    bool disposing
)
C++
protected:
virtual void Dispose (
    bool disposing
) override
J#
protected void Dispose (
    boolean disposing
)
JScript
protected override function Dispose (
    disposing : boolean
)

Parameters

System.Boolean

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PropertiesForm Class
PropertiesForm Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesForm.OnClosing Method
[image]

Namespace: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse
Assembly: Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse (in Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse.dll)

Usage

Visual Basic
Dim e As CancelEventArgs

Me.OnClosing(e)

Syntax

Visual Basic
Protected Overrides Sub OnClosing ( _
    e As CancelEventArgs _
)
C#
protected override void OnClosing (
    CancelEventArgs e
)
C++
protected:
virtual void OnClosing (
    CancelEventArgs^ e
) override
J#
protected void OnClosing (
    CancelEventArgs e
)
JScript
protected override function OnClosing (
    e : CancelEventArgs
)

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); The 32-bit and 64-bit editions of Windows Vista Ultimate, Enterprise and Business editions; The 32-bit and 64-bit editions of Windows XP Professional; Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

Target Platforms

The 32-bit and 64-bit editions of Windows Server 2003 R2 (except the Web Editions); The 32-bit and 64-bit editions of Windows Server 2003 with SP1 or SP2 (except the Web Edition); The 32-bit and 64-bit editions of Windows Server 2008 (except the Web Editions); Windows Small Business Server 2003 with SP1 or SP2; Windows Small Business Server 2008

See Also

Reference

PropertiesForm Class
PropertiesForm Members
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesForm Properties
[image]

Public Properties (see also Protected Properties)

 | Name | Description
public property | AcceptButton | (inherited from Form)
public property | AccessibilityObject | (inherited from Control)
public property | AccessibleDefaultActionDescription | (inherited from Control)
public property | AccessibleDescription | (inherited from Control)
public property | AccessibleName | (inherited from Control)
public property | AccessibleRole | (inherited from Control)
public property | ActiveControl | (inherited from ContainerControl)
public property | ActiveMdiChild | (inherited from Form)
public property | AllowDrop | (inherited from Control)
public property | AllowTransparency | (inherited from Form)
public property | Anchor | (inherited from Control)
public property | AutoScale | Obsolete. (inherited from Form)
public property | AutoScaleBaseSize | (inherited from Form)
public property | AutoScaleDimensions | (inherited from ContainerControl)
public property | AutoScaleMode | (inherited from ContainerControl)
public property | AutoScroll | Overridden. (inherited from ScrollableControl)
public property | AutoScrollMargin | (inherited from ScrollableControl)
public property | AutoScrollMinSize | (inherited from ScrollableControl)
public property | AutoScrollOffset | (inherited from Control)
public property | AutoScrollPosition | (inherited from ScrollableControl)
public property | AutoSize | Overridden. (inherited from Control)
public property | AutoSizeMode | (inherited from Form)
public property | AutoValidate | Overridden. (inherited from ContainerControl)
public property | BackColor | Overridden. (inherited from Control)
public property | BackgroundImage | (inherited from Control)
public property | BackgroundImageLayout | (inherited from Control)
public property | BindingContext | Overridden. (inherited from Control)
public property | Bottom | (inherited from Control)
public property | Bounds | (inherited from Control)
public property | CancelButton | (inherited from Form)
public property | CanFocus | (inherited from Control)
public property | CanSelect | (inherited from Control)
public property | Capture | (inherited from Control)
public property | CausesValidation | (inherited from Control)
public property | ClientRectangle | (inherited from Control)
public property | ClientSize | (inherited from Form)
public property | CompanyName | (inherited from Control)
public property | Container | (inherited from Component)
public property | ContainsFocus | (inherited from Control)
public property | ContextMenu | (inherited from Control)
public property | ContextMenuStrip | (inherited from Control)
public property | ControlBox | (inherited from Form)
public property | Controls | (inherited from Control)
public property | Created | (inherited from Control)
public property | CurrentAutoScaleDimensions | (inherited from ContainerControl)
public property | Cursor | (inherited from Control)
public property | DataBindings | (inherited from Control)
public property | DesktopBounds | (inherited from Form)
public property | DesktopLocation | (inherited from Form)
public property | DialogResult | (inherited from Form)
public property | DisplayRectangle | Overridden. (inherited from Control)
public property | Disposing | (inherited from Control)
public property | Dock | (inherited from Control)
public property | DockPadding | (inherited from ScrollableControl)
public property | Enabled | (inherited from Control)
public property | Focused | (inherited from Control)
public property | Font | (inherited from Control)
public property | ForeColor | (inherited from Control)
public property | FormBorderStyle | (inherited from Form)
public property | Handle | (inherited from Control)
public property | HasChildren | (inherited from Control)
public property | Height | (inherited from Control)
public property | HelpButton | (inherited from Form)
public property | HorizontalScroll | (inherited from ScrollableControl)
public property | Icon | (inherited from Form)
public property | ImeMode | (inherited from Control)
public property | InvokeRequired | (inherited from Control)
public property | IsAccessible | (inherited from Control)
public property | IsDisposed | (inherited from Control)
public property | IsHandleCreated | (inherited from Control)
public property | IsMdiChild | (inherited from Form)
public property | IsMdiContainer | (inherited from Form)
public property | IsMirrored | (inherited from Control)
public property | IsRestrictedWindow | (inherited from Form)
public property | KeyPreview | (inherited from Form)
public property | LayoutEngine | (inherited from Control)
public property | Left | (inherited from Control)
public property | Location | (inherited from Form)
public property | MainMenuStrip | (inherited from Form)
public property | Margin | (inherited from Form)
public property | MaximizeBox | (inherited from Form)
public property | MaximumSize | Overridden. (inherited from Control)
public property | MdiChildren | (inherited from Form)
public property | MdiParent | (inherited from Form)
public property | Menu | (inherited from Form)
public property | MergedMenu | (inherited from Form)
public property | MinimizeBox | (inherited from Form)
public property | MinimumSize | Overridden. (inherited from Control)
public property | Modal | (inherited from Form)
public property | Name | (inherited from Control)
public property | Opacity | (inherited from Form)
public property | OwnedForms | (inherited from Form)
public property | Owner | (inherited from Form)
public property | Padding | (inherited from Control)
public property | Parent | (inherited from Control)
public property | ParentForm | (inherited from ContainerControl)
public property | PreferredSize | (inherited from Control)
public property | ProductName | (inherited from Control)
public property | ProductVersion | (inherited from Control)
public property | RecreatingHandle | (inherited from Control)
public property | Region | (inherited from Control)
public property | RestoreBounds | (inherited from Form)
public property | Right | (inherited from Control)
public property | RightToLeft | (inherited from Control)
public property | RightToLeftLayout | (inherited from Form)
public property | ShowIcon | (inherited from Form)
public property | ShowInTaskbar | (inherited from Form)
public property | Site | Overridden. (inherited from Component)
public property | Size | (inherited from Form)
public property | SizeGripStyle | (inherited from Form)
public property | StartPosition | (inherited from Form)
public property | TabIndex | (inherited from Form)
public property | TabStop | (inherited from Form)
public property | Tag | (inherited from Control)
public property | Text | Overridden. (inherited from Control)
public property | Top | (inherited from Control)
public property | TopLevel | (inherited from Form)
public property | TopLevelControl | (inherited from Control)
public property | TopMost | (inherited from Form)
public property | TransparencyKey | (inherited from Form)
public property | UseWaitCursor | (inherited from Control)
public property | VerticalScroll | (inherited from ScrollableControl)
public property | Visible | (inherited from Control)
public property | Width | (inherited from Control)
public property | WindowState | (inherited from Form)
public property | WindowTarget | (inherited from Control)

Protected Properties

 | Name | Description
protected property | AutoScaleFactor | (inherited from ContainerControl)
protected property | CanRaiseEvents | Overridden. (inherited from Component)
protected property | CreateParams | Overridden. (inherited from ContainerControl)
protected property | DefaultCursor | (inherited from Control)
protected property | DefaultImeMode | Overridden. (inherited from Control)
protected property | DefaultMargin | (inherited from Control)
protected property | DefaultMaximumSize | (inherited from Control)
protected property | DefaultMinimumSize | (inherited from Control)
protected property | DefaultPadding | (inherited from Control)
protected property | DefaultSize | Overridden. (inherited from Control)
protected property | DesignMode | (inherited from Component)
protected property | DoubleBuffered | (inherited from Control)
protected property | Events | (inherited from Component)
protected property | FontHeight | (inherited from Control)
protected property | HScroll | (inherited from ScrollableControl)
protected property | MaximizedBounds | (inherited from Form)
protected property | ResizeRedraw | (inherited from Control)
protected property | ScaleChildren | (inherited from Control)
protected property | ShowWithoutActivation | (inherited from Form)
protected property | VScroll | (inherited from ScrollableControl)

See Also

Reference

PropertiesForm Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


PropertiesForm Events
[image]

Public Events

 | Name | Description
public event | Activated | (inherited from Form)
public event | AutoSizeChanged | (inherited from Form)
public event | AutoValidateChanged | (inherited from Form)
public event | BackColorChanged | (inherited from Control)
public event | BackgroundImageChanged | (inherited from Control)
public event | BackgroundImageLayoutChanged | (inherited from Control)
public event | BindingContextChanged | (inherited from Control)
public event | CausesValidationChanged | (inherited from Control)
public event | ChangeUICues | (inherited from Control)
public event | Click | (inherited from Control)
public event | ClientSizeChanged | (inherited from Control)
public event | Closed | (inherited from Form)
public event | Closing | (inherited from Form)
public event | ContextMenuChanged | (inherited from Control)
public event | ContextMenuStripChanged | (inherited from Control)
public event | ControlAdded | (inherited from Control)
public event | ControlRemoved | (inherited from Control)
public event | CursorChanged | (inherited from Control)
public event | Deactivate | (inherited from Form)
public event | Disposed | (inherited from Component)
public event | DockChanged | (inherited from Control)
public event | DoubleClick | (inherited from Control)
public event | DragDrop | (inherited from Control)
public event | DragEnter | (inherited from Control)
public event | DragLeave | (inherited from Control)
public event | DragOver | (inherited from Control)
public event | EnabledChanged | (inherited from Control)
public event | Enter | (inherited from Control)
public event | FontChanged | (inherited from Control)
public event | ForeColorChanged | (inherited from Control)
public event | FormClosed | (inherited from Form)
public event | FormClosing | (inherited from Form)
public event | GiveFeedback | (inherited from Control)
public event | GotFocus | (inherited from Control)
public event | HandleCreated | (inherited from Control)
public event | HandleDestroyed | (inherited from Control)
public event | HelpButtonClicked | (inherited from Form)
public event | HelpRequested | (inherited from Control)
public event | ImeModeChanged | (inherited from Control)
public event | InputLanguageChanged | (inherited from Form)
public event | InputLanguageChanging | (inherited from Form)
public event | Invalidated | (inherited from Control)
public event | KeyDown | (inherited from Control)
public event | KeyPress | (inherited from Control)
public event | KeyUp | (inherited from Control)
public event | Layout | (inherited from Control)
public event | Leave | (inherited from Control)
public event | Load | (inherited from Form)
public event | LocationChanged | (inherited from Control)
public event | LostFocus | (inherited from Control)
public event | MarginChanged | (inherited from Form)
public event | MaximizedBoundsChanged | (inherited from Form)
public event | MaximumSizeChanged | (inherited from Form)
public event | MdiChildActivate | (inherited from Form)
public event | MenuComplete | (inherited from Form)
public event | MenuStart | (inherited from Form)
public event | MinimumSizeChanged | (inherited from Form)
public event | MouseCaptureChanged | (inherited from Control)
public event | MouseClick | (inherited from Control)
public event | MouseDoubleClick | (inherited from Control)
public event | MouseDown | (inherited from Control)
public event | MouseEnter | (inherited from Control)
public event | MouseHover | (inherited from Control)
public event | MouseLeave | (inherited from Control)
public event | MouseMove | (inherited from Control)
public event | MouseUp | (inherited from Control)
public event | MouseWheel | (inherited from Control)
public event | Move | (inherited from Control)
public event | PaddingChanged | (inherited from Control)
public event | Paint | (inherited from Control)
public event | ParentChanged | (inherited from Control)
public event | PreviewKeyDown | (inherited from Control)
public event | QueryAccessibilityHelp | (inherited from Control)
public event | QueryContinueDrag | (inherited from Control)
public event | RegionChanged | (inherited from Control)
public event | Resize | (inherited from Control)
public event | ResizeBegin | (inherited from Form)
public event | ResizeEnd | (inherited from Form)
public event | RightToLeftChanged | (inherited from Control)
public event | RightToLeftLayoutChanged | (inherited from Form)
public event | Scroll | (inherited from ScrollableControl)
public event | Shown | (inherited from Form)
public event | SizeChanged | (inherited from Control)
public event | StyleChanged | (inherited from Control)
public event | SystemColorsChanged | (inherited from Control)
public event | TabIndexChanged | (inherited from Form)
public event | TabStopChanged | (inherited from Form)
public event | TextChanged | (inherited from Control)
public event | Validated | (inherited from Control)
public event | Validating | (inherited from Control)
public event | VisibleChanged | (inherited from Control)

See Also

Reference

PropertiesForm Class
Microsoft.ServiceModel.Channels.Tools.MetadataSearchBrowse Namespace


Help Topic Not Found

The help topic you are looking for is not available

Known Issues

This section discusses known issues that you may experience when you use Microsoft Windows Communication Foundation (WCF) Line of Business (LOB) Adapter SDK Help.

Visual Studio is not installed

The destination topic is in the Microsoft Visual Studio Help collection. To access this information, you must search the Visual Studio Help.

MSDN Library for Visual Studio is not installed

Links to topics that are part of the MSDN Library for Microsoft Visual Studio will not work without first installing MSDN. If you did not choose to install the product documentation during setup, you did not install the MSDN Library. The MSDN Library contains the Help documentation for all the products in Visual Studio. To use F1 Help and Search, as well as the Table of Contents and other documentation features, you must install Help by running setup.exe from the Visual Studio CD or DVD.

See Also

Concepts

Getting Started

� 2014 Microsoft Corporation. All rights reserved.


AdapterException Hierarchy
The following table lists the classes derived from Microsoft.ServiceModel.Channels.Common.AdapterException.

Derived Classes

Class | Description
Microsoft.ServiceModel.Channels.Common.ConnectionException |
Microsoft.ServiceModel.Channels.Common.ListenerException |
Microsoft.ServiceModel.Channels.Common.MetadataException |
Microsoft.ServiceModel.Channels.Common.TargetSystemException |
Microsoft.ServiceModel.Channels.Common.XmlReaderGenerationException |
Microsoft.ServiceModel.Channels.Common.XmlReaderParsingException |
Microsoft.ServiceModel.Channels.Common.XmlWriterGenerationException |
Microsoft.ServiceModel.Channels.Common.XmlWriterParsingException |

See Also

Reference

AdapterException Class
AdapterException Members
Microsoft.ServiceModel.Channels.Common Namespace
CommunicationException


TypeMetadata Hierarchy
The following table lists the classes derived from Microsoft.ServiceModel.Channels.Common.TypeMetadata.

Derived Classes

Class | Description
Microsoft.ServiceModel.Channels.Common.BasicTypeMetadata |
Microsoft.ServiceModel.Channels.Common.CharTypeMetadata |
Microsoft.ServiceModel.Channels.Common.DurationTypeMetadata |
Microsoft.ServiceModel.Channels.Common.GuidTypeMetadata |
Microsoft.ServiceModel.Channels.Common.StreamTypeMetadata |
Microsoft.ServiceModel.Channels.Common.StrongDataSetMetadata |
Microsoft.ServiceModel.Channels.Common.StructuredTypeMetadata |
Microsoft.ServiceModel.Channels.Common.WeakDataSetMetadata |

See Also

Reference

TypeMetadata Class
TypeMetadata Members
Microsoft.ServiceModel.Channels.Common Namespace
StructuredTypeMetadata
IMetadataResolverHandler


Copyright

Information in this document, including URL and other Internet Web site references, is subject to change without notice. Unless otherwise noted, the companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted in examples herein are fictitious. No association with any real company, organization, product, domain name, e-mail address, logo, person, place, or event is intended or should be inferred. Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation.

Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property.

© 2014 Microsoft Corporation. All rights reserved.

Microsoft, BizTalk, MSDN, Visual Studio, Windows, Windows Server, Windows Server System, and Windows Vista are trademarks of the Microsoft group of companies.

All other trademarks are property of their respective owners.

� 2014 Microsoft Corporation. All rights reserved.