Udostępnij za pośrednictwem


ServiceKnownTypeAttribute Konstruktory

Definicja

Inicjuje nowe wystąpienie klasy ServiceKnownTypeAttribute.

Przeciążenia

ServiceKnownTypeAttribute(String)

Inicjuje nowe wystąpienie ServiceKnownTypeAttribute klasy i określa nazwę metody zwracającej znane typy.

ServiceKnownTypeAttribute(Type)

Inicjuje ServiceKnownTypeAttribute nowe wystąpienie klasy o określonym znanym typie.

ServiceKnownTypeAttribute(String, Type)

Inicjuje nowe wystąpienie ServiceKnownTypeAttribute klasy o nazwie metody zwracającej znane typy i typ zawierający metodę (lub metody), która zwraca znane typy.

ServiceKnownTypeAttribute(String)

Źródło:
ServiceKnownTypeAttribute.cs
Źródło:
ServiceKnownTypeAttribute.cs
Źródło:
ServiceKnownTypeAttribute.cs

Inicjuje nowe wystąpienie ServiceKnownTypeAttribute klasy i określa nazwę metody zwracającej znane typy.

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

Parametry

methodName
String

Nazwa metody zwracającej znane typy.

Uwagi

Użyj tego konstruktora podczas stosowania ServiceKnownTypeAttribute klasy zawierającej metody zwracające znane typy.

Zobacz też

Dotyczy

ServiceKnownTypeAttribute(Type)

Źródło:
ServiceKnownTypeAttribute.cs
Źródło:
ServiceKnownTypeAttribute.cs
Źródło:
ServiceKnownTypeAttribute.cs

Inicjuje ServiceKnownTypeAttribute nowe wystąpienie klasy o określonym znanym typie.

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

Parametry

type
Type

Określa znany typ, który może być używany w parametrze lub zwracanej wartości zdefiniowanej przez usługę.

Przykłady

Poniższy przykład stosuje ServiceKnownTypeAttribute atrybut do interfejsu, w którym atrybut określa typ do uwzględnienia.

// 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

Uwagi

ServiceKnownTypeAttribute metodę można zastosować kilka razy, przy użyciu każdej aplikacji nazewnictwa innego znanego typu, który może być obecny w grafie obiektu zwróconym przez metodę.

Dotyczy

ServiceKnownTypeAttribute(String, Type)

Źródło:
ServiceKnownTypeAttribute.cs
Źródło:
ServiceKnownTypeAttribute.cs
Źródło:
ServiceKnownTypeAttribute.cs

Inicjuje nowe wystąpienie ServiceKnownTypeAttribute klasy o nazwie metody zwracającej znane typy i typ zawierający metodę (lub metody), która zwraca znane typy.

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)

Parametry

methodName
String

Nazwa metody zwracającej znane typy.

declaringType
Type

Typ, który może używać znanych typów na wykresie obiektu.

Przykłady

Poniższy przykład stosuje ServiceKnownTypeAttribute atrybut do interfejsu, w którym atrybut określa nazwę metody i typ deklarujący.

// 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

Zobacz też

Dotyczy