OperationContractGenerationContext Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przekazano do GenerateOperation(OperationContractGenerationContext) metody , aby umożliwić modyfikowanie kontraktu operacji i jego kontekstu przed wygenerowaniem kodu.
public ref class OperationContractGenerationContext
public class OperationContractGenerationContext
type OperationContractGenerationContext = class
Public Class OperationContractGenerationContext
- Dziedziczenie
-
OperationContractGenerationContext
Przykłady
W poniższym przykładzie pokazano użycie obiektu przekazanego OperationContractGenerationContext do IOperationContractGenerationExtension.GenerateOperation metody w celu dodania komentarzy kodu wyodrębnionych z niestandardowych elementów WSDL.
public void GenerateOperation(OperationContractGenerationContext context)
{
context.SyncMethod.Comments.AddRange(Formatter.FormatComments(commentText));
Console.WriteLine("In generate operation.");
}
Poniższy przykład kodu przedstawia wynikowe komentarze kodu.
/// From WSDL Documentation:
///
/// <summary>This contract is a stateless contract that provides a mechanism for
/// computing the nth Fibonacci term.</summary>
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
[System.ServiceModel.ServiceContractAttribute(Namespace="http://microsoft.wcf.documentation", ConfigurationName="IFibonacci")]
public interface IFibonacci
{
/// From WSDL Documentation:
///
/// <summary>The Compute operation returns the nth Fibonacci number. Because it
/// uses dual recursion it's very inefficient and therefore useful to demonstrate
/// caching.</summary><returns>The nth Fibonacci number.</returns><param
/// name="num">The value to use when computing the Fibonacci number.</param>
///
[System.ServiceModel.OperationContractAttribute(Action="http://microsoft.wcf.documentation/IFibonacci/Compute", ReplyAction="http://microsoft.wcf.documentation/IFibonacci/ComputeResponse")]
int Compute(int num);
/// From WSDL Documentation:
///
/// <summary>The GetPerson operation tests custom WSDL documentation
/// generation.</summary><returns>The Person object to be returned.</returns><param
/// name="FirstParameter">The value for the first parameter.</param><param
/// name="SecondParameter">The value for the second parameter.</param>
///
[System.ServiceModel.OperationContractAttribute(Action="http://microsoft.wcf.documentation/IFibonacci/GetPerson", ReplyAction="http://microsoft.wcf.documentation/IFibonacci/GetPersonResponse")]
Microsoft.WCF.Documentation.Person GetPerson(int FirstParameter, int SecondParameter);
}
'''From WSDL Documentation:
'''
'''<summary>This contract is a stateless contract that provides a mechanism for
'''computing the nth Fibonacci term.</summary>
'''
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0"), _
System.ServiceModel.ServiceContractAttribute([Namespace]:="http://microsoft.wcf.documentation", ConfigurationName:="IFibonacci")> _
Public Interface IFibonacci
'''From WSDL Documentation:
'''
'''<summary>The Compute operation returns the nth Fibonacci number. Because it
'''uses dual recursion it's very inefficient and therefore useful to demonstrate
'''caching.</summary><returns>The nth Fibonacci number.</returns><param
'''name="num">The value to use when computing the Fibonacci number.</param>
'''
<System.ServiceModel.OperationContractAttribute(Action:="http://microsoft.wcf.documentation/IFibonacci/Compute", ReplyAction:="http://microsoft.wcf.documentation/IFibonacci/ComputeResponse")> _
Function Compute(ByVal num As Integer) As Integer
'''From WSDL Documentation:
'''
'''<summary>The GetPerson operation tests custom WSDL documentation
'''generation.</summary><returns>The Person object to be returned.</returns><param
'''name="FirstParameter">The value for the first parameter.</param><param
'''name="SecondParameter">The value for the second parameter.</param>
'''
<System.ServiceModel.OperationContractAttribute(Action:="http://microsoft.wcf.documentation/IFibonacci/GetPerson", ReplyAction:="http://microsoft.wcf.documentation/IFibonacci/GetPersonResponse")> _
Function GetPerson(ByVal FirstParameter As Integer, ByVal SecondParameter As Integer) As Microsoft.WCF.Documentation.Person
End Interface
Uwagi
Użyj obiektu przekazanego OperationContractGenerationContext IOperationContractGenerationExtension.GenerateOperation do metody , aby zmodyfikować model obiektu dokumentu kodu przed wygenerowaniem kodu. System.ServiceModel.Description.IOperationContractGenerationExtension Zazwyczaj interfejs jest implementowany w implementacji niestandardowejSystem.ServiceModel.Description.IWsdlImportExtension, która służy do importowania niestandardowych elementów WSDL lub modyfikowania kodu na poziomie usługi lub operacji. Aby zmodyfikować kod na poziomie usługi, zobacz System.ServiceModel.Description.IServiceContractGenerationExtension.
Konstruktory
Właściwości
BeginMethod |
Pobiera metodę CodeMemberMethod dla operacji rozpoczęcia asynchronicznego. |
Contract |
Pobiera kontekst generowania kodu dla kontraktu usługi. |
DeclaringType |
Pobiera typ deklarowania dla bieżącej operacji. |
EndMethod |
Pobiera asynchroniczną deklarację operacji zakończenia. |
IsAsync |
Pobiera wartość wskazującą, czy metody asynchroniczne są generowane dla bieżącej operacji. |
IsTask |
Pobiera wartość wskazującą, czy zadanie jest generowane dla bieżącej operacji. |
Operation |
Pobiera wartość OperationDescription dla bieżącej operacji. |
ServiceContractGenerator |
Pobiera element ServiceContractGenerator , który generuje bieżącą operację. |
SyncMethod |
Pobiera element CodeMemberMethod dla operacji synchronicznej. |
TaskMethod |
Pobiera element CodeMemberMethod dla operacji zadania. |
Metody
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |