OperationDescription Sınıf
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.
İşlemi oluşturan iletilerin açıklamasını sağlayan sözleşme işleminin açıklamasını temsil eder.
public ref class OperationDescription
public class OperationDescription
type OperationDescription = class
Public Class OperationDescription
- Devralma
-
OperationDescription
Örnekler
Aşağıdaki örnek, sınıfının özelliği tarafından Operations döndürülen koleksiyondan döndürülen öğesini ContractDescription kullanırOperationDescription. Kod, uç nokta koleksiyonunda yinelenir ve uç nokta adlarının yanı sıra uç noktadaki her işlemin adını yazdırır.
private void PrintDescription(ServiceHost sh)
{
// Declare variables.
int i, j, k, l, c;
ServiceDescription servDesc = sh.Description;
OperationDescription opDesc;
ContractDescription contractDesc;
MessageDescription methDesc;
MessageBodyDescription mBodyDesc;
MessagePartDescription partDesc;
IServiceBehavior servBeh;
ServiceEndpoint servEP;
// Print the behaviors of the service.
Console.WriteLine("Behaviors:");
for (c = 0; c < servDesc.Behaviors.Count; c++)
{
servBeh = servDesc.Behaviors[c];
Console.WriteLine("\t{0}", servBeh.ToString());
}
// Print the endpoint descriptions of the service.
Console.WriteLine("Endpoints");
for (i = 0; i < servDesc.Endpoints.Count; i++)
{
// Print the endpoint names.
servEP = servDesc.Endpoints[i];
Console.WriteLine("\tName: {0}", servEP.Name);
contractDesc = servEP.Contract;
Console.WriteLine("\tOperations:");
for (j = 0; j < contractDesc.Operations.Count; j++)
{
// Print the operation names.
opDesc = servEP.Contract.Operations[j];
Console.WriteLine("\t\t{0}", opDesc.Name);
Console.WriteLine("\t\tActions:");
for (k = 0; k < opDesc.Messages.Count; k++)
{
// Print the message action.
methDesc = opDesc.Messages[k];
Console.WriteLine("\t\t\tAction:{0}", methDesc.Action);
// Check for the existence of a body, then the body description.
mBodyDesc = methDesc.Body;
if (mBodyDesc.Parts.Count > 0)
{
for (l = 0; l < methDesc.Body.Parts.Count; l++)
{
partDesc = methDesc.Body.Parts[l];
Console.WriteLine("\t\t\t\t{0}",partDesc.Name);
}
}
}
}
}
}
Private Sub PrintDescription(ByVal sh As ServiceHost)
' Declare variables.
Dim i, j, k, l, c As Integer
Dim servDesc As ServiceDescription = sh.Description
Dim opDesc As OperationDescription
Dim contractDesc As ContractDescription
Dim methDesc As MessageDescription
Dim mBodyDesc As MessageBodyDescription
Dim partDesc As MessagePartDescription
Dim servBeh As IServiceBehavior
Dim servEP As ServiceEndpoint
' Print the behaviors of the service.
Console.WriteLine("Behaviors:")
For c = 0 To servDesc.Behaviors.Count-1
servBeh = servDesc.Behaviors(c)
Console.WriteLine(vbTab + "{0}", servBeh)
Next c
' Print the endpoint descriptions of the service.
Console.WriteLine("Endpoints")
For i = 0 To servDesc.Endpoints.Count-1
' Print the endpoint names.
servEP = servDesc.Endpoints(i)
Console.WriteLine(vbTab + "Name: {0}", servEP.Name)
contractDesc = servEP.Contract
Console.WriteLine(vbTab + "Operations:")
For j = 0 To contractDesc.Operations.Count-1
' Print operation names.
opDesc = servEP.Contract.Operations(j)
Console.WriteLine(vbTab + vbTab + "{0}", opDesc.Name)
Console.WriteLine(vbTab + vbTab + "Actions:")
For k = 0 To opDesc.Messages.Count-1
' Print the message action.
methDesc = opDesc.Messages(k)
Console.WriteLine(vbTab + vbTab + vbTab + _
"Action:{0}", methDesc.Action)
' Check for the existence of a body, then the body description.
mBodyDesc = methDesc.Body
If mBodyDesc.Parts.Count > 0 Then
For l = 0 To methDesc.Body.Parts.Count-1
partDesc = methDesc.Body.Parts(l)
Console.WriteLine(vbTab + vbTab + _
vbTab + vbTab + "{0}", partDesc.Name)
Next l
End If
Next k
Next j
Next i
End Sub
Açıklamalar
Windows Communication Foundation (WCF) sözleşmesi, uç noktanın dış dünyayla ne iletişim kurduğunu belirten bir işlem koleksiyonudur. Her işlem bir ileti değişimidir. Örneğin, bir istek iletisi ve istek/yanıt iletisi değişimi oluşturan ilişkili bir yanıt iletisi.
Bir ContractDescription nesne, sözleşmeleri ve bunların işlemlerini açıklamak için kullanılır. içinde ContractDescription, her sözleşme işleminin tek yönlü mü yoksa istek/yanıt mı olduğu gibi işlemin özelliklerini açıklayan bir karşılık geleni OperationDescription vardır. Her OperationDescription biri, bir nesne koleksiyonu MessageDescription kullanarak işlemi oluşturan iletileri de açıklar. ContractDescription , programlama modelini kullanarak sözleşmeyi tanımlayan bir arabirime başvuru içerir. Bu arabirim ile ServiceContractAttributeişaretlenir ve uç nokta işlemlerine karşılık gelen yöntemleri ile OperationContractAttributeişaretlenir.
üzerindeki OperationDescription özelliklerin birçoğu üzerindeki WCF programlama modelinde OperationContractAttributekarşılık gelen özelliklere sahiptir, örneğin, IsTerminating.
Oluşturucular
OperationDescription(String, ContractDescription) |
Belirtilen ad ve sözleşme açıklamasıyla sınıfın OperationDescription yeni bir örneğini başlatır. |
Özellikler
BeginMethod |
İşlemin begin yöntemini alır veya ayarlar. |
Behaviors |
İşlemle ilişkili işlem davranışlarını alır veya ayarlar. |
DeclaringContract |
İşlemin ait olduğu sözleşmeyi alır veya ayarlar. |
EndMethod |
İşlemin bitiş yöntemini alır veya ayarlar. |
Faults |
İşlem açıklamasıyla ilişkili hataların açıklamalarını alır. |
HasProtectionLevel |
İşlemin koruma düzeyi ayarlanmış olup olmadığını belirten bir değer alır. |
IsInitiating |
Yöntemin sunucuda oturum başlatabilecek bir işlem uygulayıp uygulamadığını belirten bir değer alır veya ayarlar (böyle bir oturum varsa). |
IsOneWay |
İşlemin yanıt iletisi döndürdüğünü belirten bir değer alır veya ayarlar. |
IsTerminating |
Hizmet işleminin yanıt iletisi gönderildikten sonra sunucunun oturumu kapatmasına neden olup olmadığını belirten bir değer alır veya ayarlar. |
KnownTypes |
İşlem açıklamasıyla ilişkili bilinen türleri alır. |
Messages |
İşlemi oluşturan iletilerin açıklamalarını alır veya ayarlar. |
Name |
İşlem açıklamasının adını alır veya ayarlar. |
OperationBehaviors |
İşlem için davranış kümesini alır. |
ProtectionLevel |
İşlem için koruma düzeyini alır veya ayarlar. |
SyncMethod |
İşlem açıklamasının hizmet eşitleme yöntemini alır veya ayarlar. |
TaskMethod |
Görev işlemi için kullanılan yöntemi alır veya ayarlar. |
Yöntemler
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ShouldSerializeProtectionLevel() |
Özelliğin varsayılan değerinden ProtectionLevel değiştirilip değiştirilmediğini ve seri hale getirilip getirilmeyeceğini belirten bir değer döndürür. |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |