ServiceKnownTypeAttribute Konstruktoren

Definition

Initialisiert eine neue Instanz der ServiceKnownTypeAttribute-Klasse.

Überlädt

Name Beschreibung
ServiceKnownTypeAttribute(String)

Initialisiert eine neue Instanz der ServiceKnownTypeAttribute Klasse und gibt den Namen einer Methode an, die die bekannten Typen zurückgibt.

ServiceKnownTypeAttribute(Type)

Initialisiert eine neue Instanz der ServiceKnownTypeAttribute Klasse mit dem angegebenen bekannten Typ.

ServiceKnownTypeAttribute(String, Type)

Initialisiert eine neue Instanz der ServiceKnownTypeAttribute Klasse mit dem Namen einer Methode, die die bekannten Typen und den Typ zurückgibt, der die Methode (oder Methoden) enthält, die die bekannten Typen zurückgibt.

ServiceKnownTypeAttribute(String)

Quelle:
ServiceKnownTypeAttribute.cs
Quelle:
ServiceKnownTypeAttribute.cs
Quelle:
ServiceKnownTypeAttribute.cs

Initialisiert eine neue Instanz der ServiceKnownTypeAttribute Klasse und gibt den Namen einer Methode an, die die bekannten Typen zurückgibt.

public:
 ServiceKnownTypeAttribute(System::String ^ methodName);
public ServiceKnownTypeAttribute(string methodName);
new System.ServiceModel.ServiceKnownTypeAttribute : string -> System.ServiceModel.ServiceKnownTypeAttribute
Public Sub New (methodName As String)

Parameter

methodName
String

Der Name einer Methode, die die bekannten Typen zurückgibt.

Hinweise

Verwenden Sie diesen Konstruktor, wenn Sie die ServiceKnownTypeAttribute Klasse anwenden, die Methoden enthält, die bekannte Typen zurückgeben.

Weitere Informationen

Gilt für:

ServiceKnownTypeAttribute(Type)

Quelle:
ServiceKnownTypeAttribute.cs
Quelle:
ServiceKnownTypeAttribute.cs
Quelle:
ServiceKnownTypeAttribute.cs

Initialisiert eine neue Instanz der ServiceKnownTypeAttribute Klasse mit dem angegebenen bekannten Typ.

public:
 ServiceKnownTypeAttribute(Type ^ type);
public ServiceKnownTypeAttribute(Type type);
new System.ServiceModel.ServiceKnownTypeAttribute : Type -> System.ServiceModel.ServiceKnownTypeAttribute
Public Sub New (type As Type)

Parameter

type
Type

Gibt einen bekannten Typ an, der in einem Parameter oder Rückgabewert verwendet werden kann, der vom Dienst definiert wird.

Beispiele

Im folgenden Beispiel wird das ServiceKnownTypeAttribute Attribut auf eine Schnittstelle angewendet, auf der das Attribut den einzuschließden Typ angibt.

// Apply the ServiceKnownTypeAttribute to the
// interface specifying the type to include. Apply
// the attribute more than once if needed.
[ServiceKnownType(typeof(Widget))]
[ServiceKnownType(typeof(Machine))]
[ServiceContract()]
public interface ICatalog2
{
    // Any object type can be inserted into a Hashtable. The
    // ServiceKnownTypeAttribute allows you to include those types
    // with the client code.
    [OperationContract]
    Hashtable GetItems();
}
' Apply the ServiceKnownTypeAttribute to the 
' interface specifying the type to include. Apply the attribute
' more than once, if needed.
<ServiceKnownType(GetType(Widget)), ServiceKnownType(GetType(Machine)), _
 ServiceContract()>  _
Public Interface ICalculator2
    ' Any object type can be inserted into a Hashtable. The 
    ' ServiceKnownTypeAttribute allows you to include those types
    ' with the client code.
    <OperationContract()>  _
    Function GetItems() As Hashtable 
End Interface

Hinweise

Die ServiceKnownTypeAttribute Methode kann mehrmals auf eine Methode angewendet werden, wobei jede Anwendung einen anderen bekannten Typ benennt, der in dem objektdiagramm vorhanden sein kann, das von der Methode zurückgegeben wird.

Gilt für:

ServiceKnownTypeAttribute(String, Type)

Quelle:
ServiceKnownTypeAttribute.cs
Quelle:
ServiceKnownTypeAttribute.cs
Quelle:
ServiceKnownTypeAttribute.cs

Initialisiert eine neue Instanz der ServiceKnownTypeAttribute Klasse mit dem Namen einer Methode, die die bekannten Typen und den Typ zurückgibt, der die Methode (oder Methoden) enthält, die die bekannten Typen zurückgibt.

public:
 ServiceKnownTypeAttribute(System::String ^ methodName, Type ^ declaringType);
public ServiceKnownTypeAttribute(string methodName, Type declaringType);
new System.ServiceModel.ServiceKnownTypeAttribute : string * Type -> System.ServiceModel.ServiceKnownTypeAttribute
Public Sub New (methodName As String, declaringType As Type)

Parameter

methodName
String

Der Name einer Methode, die die bekannten Typen zurückgibt.

declaringType
Type

Der Typ, der die bekannten Typen in seinem Objektdiagramm verwenden kann.

Beispiele

Im folgenden Beispiel wird das ServiceKnownTypeAttribute Attribut auf eine Schnittstelle angewendet, auf der das Attribut einen Methodennamen und einen deklarierenden Typ angibt.

// Define a service contract and apply the ServiceKnownTypeAttribute
// to specify types to include when generating client code.
// The types must have the DataContractAttribute and DataMemberAttribute
// applied to be serialized and deserialized. The attribute specifies the
// name of a method (GetKnownTypes) in a class (Helper) defined below.
[ServiceKnownType("GetKnownTypes", typeof(Helper))]
[ServiceContract()]
public interface ICatalog
{
    // Any object type can be inserted into a Hashtable. The
    // ServiceKnownTypeAttribute allows you to include those types
    // with the client code.
    [OperationContract]
    Hashtable GetItems();
}

// This class has the method named GetKnownTypes that returns a generic IEnumerable.
static class Helper
{
    public static IEnumerable<Type> GetKnownTypes(ICustomAttributeProvider provider)
    {
        System.Collections.Generic.List<System.Type> knownTypes =
            new System.Collections.Generic.List<System.Type>();
        // Add any types to include here.
        knownTypes.Add(typeof(Widget));
        knownTypes.Add(typeof(Machine));
        return knownTypes;
    }
}

[DataContract()]
public class Widget
{
    [DataMember]
    public string Id;
    [DataMember]
    public string Catalog;
}

[DataContract()]
public class Machine : Widget
{
    [DataMember]
    public string Maker;
}
' Define a service contract and apply the ServiceKnownTypeAttribute
' to specify types to include when generating client code. 
' The types must have the DataContractAttribute and DataMemberAttribute
' applied to be serialized and deserialized. The attribute specifies the 
' name of a method (GetKnownTypes) in a class (Helper) defined below.
<ServiceKnownType("GetKnownTypes", GetType(Helper)), ServiceContract()>  _
Public Interface ICalculator
    ' Any object type can be inserted into a Hashtable. The 
    ' ServiceKnownTypeAttribute allows you to include those types
    ' with the client code.
    <OperationContract()>  _
    Function GetItems() As Hashtable 
End Interface 

' This class has the method named GetKnownTypes that returns a generic IEnumerable.
Friend Class Helper
    Public Shared  Function GetKnownTypes(provider As ICustomAttributeProvider) _
     As IEnumerable(of Type) 
        Dim knownTypes As List(Of Type) = New List(Of Type)
        ' Add any types to include here.
        knownTypes.Add(GetType(Widget))
        knownTypes.Add(GetType(Machine))
        Return knownTypes
    End Function 
End Class 

<DataContract()>  _
Public Class Widget
    <DataMember()>  _
    Public Id As String
    <DataMember()>  _
    Public Catalog As String
End Class 

<DataContract()>  _
Public Class Machine
    Inherits Widget
    <DataMember()>  _
    Public Maker As String
End Class

Weitere Informationen

Gilt für: