IOperationContractGenerationExtension.GenerateOperation Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Sözleşme oluşturma işleminden önce kod belgesi nesne modelini değiştirmek için uygulayın.
public:
void GenerateOperation(System::ServiceModel::Description::OperationContractGenerationContext ^ context);
public void GenerateOperation (System.ServiceModel.Description.OperationContractGenerationContext context);
abstract member GenerateOperation : System.ServiceModel.Description.OperationContractGenerationContext -> unit
Public Sub GenerateOperation (context As OperationContractGenerationContext)
Parametreler
Oluşturulan işlemi değiştirmek için gereken türleri içeren System.CodeDom çalışma bağlamı.
Örnekler
Aşağıdaki kod örneği, ad alanını kullanarak işlemin açıklamalar bölümüne bir dize ekleyen yönteminin System.CodeDom uygulamasını GenerateOperation gösterir.
Aşağıdaki kod örneği, uygulayan IOperationContractGenerationExtension işlem davranışının çağrısı IWsdlImportExtension.ImportContractsırasında koleksiyona OperationDescription.Behaviors nasıl eklendiğini gösterir.
public void ImportContract(WsdlImporter importer, WsdlContractConversionContext context)
{
Console.Write("ImportContract");
// Contract Documentation
if (context.WsdlPortType.Documentation != null)
{
context.Contract.Behaviors.Add(new WsdlDocumentationImporter(context.WsdlPortType.Documentation));
}
// Operation Documentation
foreach (Operation operation in context.WsdlPortType.Operations)
{
if (operation.Documentation != null)
{
OperationDescription operationDescription = context.Contract.Operations.Find(operation.Name);
if (operationDescription != null)
{
operationDescription.Behaviors.Add(new WsdlDocumentationImporter(operation.Documentation));
}
}
}
}
Son olarak, aşağıdaki kod örneği hem Visual Basic hem de C# dilinde oluşturulan işlemi gösterir.
/// From WSDL Documentation:
///
/// <summary>The string for the Name data member.</summary>
///
[System.Runtime.Serialization.DataMemberAttribute()]
public string Name
{
get
{
return this.NameField;
}
set
{
this.NameField = value;
}
}
'''From WSDL Documentation:
'''
'''<summary>The string for the Name data member.</summary>
'''
<System.Runtime.Serialization.DataMemberAttribute()> _
Public Property Name() As String
Get
Return Me.NameField
End Get
Set
Me.NameField = value
End Set
End Property
Açıklamalar
Genellikle, özel System.ServiceModel.Description.IWsdlImportExtension bir özel işlem davranışını OperationDescription.Behaviors veya IWsdlImportExtension.ImportEndpointçağrısı sırasında koleksiyona IWsdlImportExtension.ImportContract ekler.
yöntemi GenerateOperation her sözleşme için bir kez çağrılır.