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 インターフェイスを実装することで、IPolicyExportExtension インターフェイスとカスタム ポリシー アサーションを実装することで、カスタム WSDL 拡張機能のエクスポートをサポートできます。 詳細については、これらのインターフェイスのドキュメントを参照してください。
Note
WsdlExporterは、ContractDescription メソッドを使用して作成されたContractDescription インスタンスや、ContractDescription.GetContract インスタンスのServiceDescriptionの一部として作成されたインスタンスなど、共通言語ランタイム (CLR) 型情報を含むServiceHostインスタンスからのメタデータのエクスポートにのみ使用できます。
WsdlExporterを使用して、サービス メタデータからインポートまたは型情報なしで構築されたContractDescriptionインスタンスからメタデータをエクスポートすることはできません。
コンストラクター
| 名前 | 説明 |
|---|---|
| WsdlExporter() |
WsdlExporter クラスの新しいインスタンスを初期化します。 |
プロパティ
| 名前 | 説明 |
|---|---|
| Errors |
メタデータのエクスポート中に発生したエラーのコレクションを取得します。 (継承元 MetadataExporter) |
| GeneratedWsdlDocuments |
エクスポート メソッドのいずれかを呼び出した後、 ServiceDescription オブジェクトのコレクションを取得します。 |
| GeneratedXmlSchemas |
エクスポート メソッドのいずれかを呼び出した後、 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) |