WsdlExporter クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
サービス、コントラクト、およびエンドポイントの情報を、メタデータ ドキュメントに変換します。
public ref class WsdlExporter : System::ServiceModel::Description::MetadataExporter
public class WsdlExporter : System.ServiceModel.Description.MetadataExporter
type WsdlExporter = class
inherit MetadataExporter
Public Class WsdlExporter
Inherits MetadataExporter
- 継承
例
ExportEndpoint メソッドを使用して、MetadataSection と呼ばれる ServiceEndpoint オブジェクトのコレクション内のエンドポイントから一連の myServiceEndpoints
オブジェクトを生成する方法を次のコード例に示します。
using System;
using System.ServiceModel;
using System.ServiceModel.Description;
namespace WsdlExporterSample
{
class Program
{
static void Main(string[] args)
{
WsdlExporter exporter = new WsdlExporter();
exporter.PolicyVersion = PolicyVersion.Policy15;
ServiceEndpoint [] myServiceEndpoints = new ServiceEndpoint[2];
ContractDescription myDescription = new ContractDescription ("myContract");
myServiceEndpoints[0] = new ServiceEndpoint(myDescription,new BasicHttpBinding(),new EndpointAddress("http://localhost/myservice"));
myServiceEndpoints[1] = new ServiceEndpoint(myDescription,new BasicHttpBinding(),new EndpointAddress("http://localhost/myservice"));
// Export all endpoints for each endpoint in collection.
foreach (ServiceEndpoint endpoint in myServiceEndpoints)
{
exporter.ExportEndpoint(endpoint);
}
// If there are no errors, get the documents.
MetadataSet metadataDocs = null;
if (exporter.Errors.Count != 0)
{
metadataDocs = exporter.GetGeneratedMetadata();
}
}
}
}
Imports System.ServiceModel
Imports System.ServiceModel.Description
Module Module1
Sub Main()
Dim exporter As New WsdlExporter()
exporter.PolicyVersion = PolicyVersion.Policy15
Dim myServiceEndpoints() As ServiceEndpoint = New ServiceEndpoint(1) {}
Dim myDescription As New ContractDescription("myContract")
myServiceEndpoints(0) = New ServiceEndpoint(myDescription, New BasicHttpBinding(), New EndpointAddress("http://localhost/myservice"))
myServiceEndpoints(1) = New ServiceEndpoint(myDescription, New BasicHttpBinding(), New EndpointAddress("http://localhost/myservice"))
'Export all endpoints for each endpoint in collection.
For Each endpoint As ServiceEndpoint In myServiceEndpoints
exporter.ExportEndpoint(endpoint)
Next
'If there are no errors, get the documents.
Dim metadataDocs As MetadataSet
metadataDocs = Nothing
If (exporter.Errors.Count = 0) Then
metadataDocs = exporter.GetGeneratedMetadata()
End If
End Sub
End Module
注釈
WsdlExporter クラスを使用して、ContractDescription または ServiceEndpoint オブジェクトを、MetadataSection オブジェクトによって表されるメタデータに変換します。
WsdlExporter は、3 つの手順からなるプロセスで使用されます。
ExportContract メソッド、ExportEndpoint メソッド、ExportEndpoints メソッドのいずれかを、適切なパラメーターを指定して呼び出します。
基本の Errors プロパティを調べて、エクスポート エラーがあるかどうかを判断します。
エラーがない場合は、GetGeneratedMetadata を使用して、MetadataSection オブジェクトのコレクションを取得するか、GeneratedWsdlDocuments または GeneratedXmlSchemas プロパティを使用して、メタデータの具体的なバージョンを取得します。
IWsdlExportExtension インターフェイスを実装することによってカスタム WSDL 拡張のエクスポートをサポートできます。また、IPolicyExportExtension インターフェイスを実装することによってカスタム ポリシー アサーションのエクスポートをサポートできます。 詳細については、それぞれのインターフェイスのドキュメントを参照してください。
注意
WsdlExporter
は、ContractDescription
メソッドを使用するか、ContractDescription
インスタンスの ContractDescription.GetContract
の一部として作成された ServiceDescription
インスタンスなど、共通言語ランタイム (CLR) の型情報を含む ServiceHost
インスタンスからメタデータをエクスポートする場合にのみ使用できます。 WsdlExporter
インスタンスをサービス メタデータからインポートした場合や、型情報を使用せずに作成した場合は、ContractDescription
を使用してメタデータをエクスポートできません。
コンストラクター
WsdlExporter() |
WsdlExporter クラスの新しいインスタンスを初期化します。 |
プロパティ
Errors |
メタデータのエクスポート中に発生したエラーのコレクションを取得します。 (継承元 MetadataExporter) |
GeneratedWsdlDocuments |
エクスポート メソッドの 1 つを呼び出した後で、ServiceDescription オブジェクトのコレクションを取得します。 |
GeneratedXmlSchemas |
エクスポート メソッドの 1 つを呼び出した後で、一連の XmlSchema オブジェクトを取得します。 |
PolicyVersion |
使用する WS-Policy 仕様のバージョンを指定します。 (継承元 MetadataExporter) |
State |
メタデータのエクスポートで使用するオブジェクトのディクショナリを取得します。 (継承元 MetadataExporter) |
メソッド
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
ExportContract(ContractDescription) |
指定したコントラクトの説明から、コントラクト情報のみを記述するメタデータをエクスポートします。 |
ExportEndpoint(ServiceEndpoint) |
指定したエンドポイントについてのメタデータを生成します。 |
ExportEndpoints(IEnumerable<ServiceEndpoint>, XmlQualifiedName) |
指定したサービスから、エンドポイントのグループについてのメタデータを生成します。 |
ExportPolicy(ServiceEndpoint) |
ポリシー アサーションを PolicyConversionContext オブジェクトに変換します。 (継承元 MetadataExporter) |
GetGeneratedMetadata() |
生成された MetadataSection オブジェクトの列挙可能なコレクションを返します。 |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |