WebPartTransformerAttribute WebPartTransformerAttribute WebPartTransformerAttribute WebPartTransformerAttribute Class

Definición

Identifica los tipos de puntos de conexión que admite un transformador.Identifies the types of connection points that a transformer supports.

public ref class WebPartTransformerAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class)]
public sealed class WebPartTransformerAttribute : Attribute
type WebPartTransformerAttribute = class
    inherit Attribute
Public NotInheritable Class WebPartTransformerAttribute
Inherits Attribute
Herencia
WebPartTransformerAttributeWebPartTransformerAttributeWebPartTransformerAttributeWebPartTransformerAttribute
Atributos

Ejemplos

En el ejemplo de código siguiente se muestra el WebPartTransformerAttribute uso de un atributo WebPartTransformer con una clase personalizada.The following code example demonstrates the use of a WebPartTransformerAttribute attribute with a customized WebPartTransformer class. El atributo indica que la RowToStringTransformer clase puede transformar un punto de conexión del proveedor IWebPartRow de tipo en un punto de conexión IStringdel consumidor de tipo.The attribute indicates that the RowToStringTransformer class can transform a provider connection point of type IWebPartRow to a consumer connection point of type IString.

Este ejemplo de código forma parte de un ejemplo más grande que WebPartTransformer se encuentra en la información general de la clase.This code example is part of a larger example found in the WebPartTransformer class overview.

// A transformer that transforms a row to a string.
[AspNetHostingPermission(SecurityAction.Demand,
  Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand,
  Level = AspNetHostingPermissionLevel.Minimal)]
[WebPartTransformer(typeof(IWebPartRow), typeof(IString))]
public class RowToStringTransformer : WebPartTransformer, IString
{

    private IWebPartRow _provider;
    private StringCallback _callback;

    private void GetRowData(object rowData)
    {
        PropertyDescriptorCollection props = _provider.Schema;
        if (props != null && props.Count > 0 && rowData != null)
        {
            string returnValue = String.Empty;
            foreach (PropertyDescriptor prop in props)
            {
                if (prop != props[0])
                {
                    returnValue += ", ";
                }
                returnValue += prop.DisplayName + ": " + prop.GetValue(rowData);
            }
            _callback(returnValue);
        }
        else
        {
            _callback(null);
        }
    }
    
    public override object Transform(object providerData)
    {
        _provider = (IWebPartRow)providerData;
        return this;
    }

    void IString.GetStringValue(StringCallback callback)
    {
        if (callback == null)
        {
            throw new ArgumentNullException("callback");
        }

        if (_provider != null)
        {
            _callback = callback;
            _provider.GetRowData(new RowCallback(GetRowData));
        }
        else
        {
            callback(null);
        }
    }
}
' A transformer that transforms a row to a string.
<AspNetHostingPermission(SecurityAction.Demand, _
   Level:=AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermission(SecurityAction.InheritanceDemand, _
   Level:=AspNetHostingPermissionLevel.Minimal)> _
<WebPartTransformer(GetType(IWebPartRow), GetType(IString))> _
Public Class RowToStringTransformer
    Inherits WebPartTransformer
    Implements IString

    Private _provider As IWebPartRow
    Private _callback As StringCallback

    Private Sub GetRowData(ByVal rowData As Object)
        Dim props As PropertyDescriptorCollection = _provider.Schema

        If ((Not (props Is Nothing)) AndAlso (props.Count > 0) _
          AndAlso (Not (rowData Is Nothing))) Then
            Dim returnValue As String = String.Empty
            For Each prop As PropertyDescriptor In props
                If Not (prop Is props(0)) Then
                    returnValue += ", "
                End If
                returnValue += prop.DisplayName.ToString() + ": " + _
                    prop.GetValue(rowData).ToString()
            Next
            _callback(returnValue)
        Else
            _callback(Nothing)
        End If
    End Sub

    Public Overrides Function Transform(ByVal providerData As Object) As Object
        _provider = CType(providerData, IWebPartRow)
        Return Me
    End Function


    Sub GetStringValue(ByVal callback As StringCallback) _
       Implements IString.GetStringValue
        If (callback Is Nothing) Then
            Throw New ArgumentNullException("callback")
        End If

        If (Not (_provider Is Nothing)) Then
            _callback = callback
            _provider.GetRowData(New RowCallback(AddressOf GetRowData))
        Else
            callback(Nothing)
        End If
    End Sub
End Class

Comentarios

Los transformadores se usan para convertir los datos entre dos controles elementos web con puntos de conexión incompatibles.Transformers are used to translate data between two Web Parts controls with incompatible connection points. Los puntos de conexión no son compatibles cuando proporcionan o consumen datos a través de distintas interfaces.Connection points are incompatible when they provide or consume data through different interfaces. Por ejemplo, un proveedor que implementa un punto de conexión de IWebPartRow proveedor de tipo no se pudo conectar directamente a un consumidor que espera un IWebPartTablepunto de conexión de proveedor de tipo.For example, a provider implementing a provider connection point of type IWebPartRow could not directly connect to a consumer expecting a provider connection point of type IWebPartTable. En su lugar, se debe usar un transformador para conectar los dos puntos de conexión.Instead, a transformer must be used to connect the two connection points. Se puede crear un transformador personalizado derivando una clase de la WebPartTransformer clase.A customized transformer can be created by deriving a class from the WebPartTransformer class.

El WebPartTransformerAttribute atributo se aplica a una WebPartTransformer clase.The WebPartTransformerAttribute attribute is applied to a WebPartTransformer class. Define el tipo de punto de conexión del proveedor y el tipo de punto de conexión del consumidor que admite un transformador.It defines the type of provider connection point and the type of consumer connection point that a transformer supports. El tipo de punto de conexión del consumidor y del proveedor admitido por el transformador debe coincidir con los puntos de conexión del consumidor y del proveedor elementos web controles para que se realice una conexión entre los controles.The type of consumer and provider connection points supported by the transformer must match the connection points of the consumer and provider Web Parts controls for a connection to be made between the controls. En tiempo de ejecución, el tipo de puntos de conexión que admite un transformador determinado se puede recuperar GetConsumerType a GetProviderType través de los métodos y.At run time, the type of connection points that a particular transformer supports can be retrieved through the GetConsumerType and GetProviderType methods.

Constructores

WebPartTransformerAttribute(Type, Type) WebPartTransformerAttribute(Type, Type) WebPartTransformerAttribute(Type, Type) WebPartTransformerAttribute(Type, Type)

Inicializa una nueva instancia de la clase WebPartTransformerAttribute.Initializes a new instance of the WebPartTransformerAttribute class.

Propiedades

ConsumerType ConsumerType ConsumerType ConsumerType

Obtiene el tipo Type de la interfaz admitido por el punto de conexión del consumidor.Gets the Type of the interface supported by the consumer connection point.

ProviderType ProviderType ProviderType ProviderType

Obtiene el tipo Type de la interfaz admitido por el punto de conexión del proveedor.Gets the Type of the interface supported by the provider connection point.

TypeId TypeId TypeId TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)

Métodos

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Devuelve un valor que indica si esta instancia es igual que un objeto especificado.Returns a value that indicates whether this instance is equal to a specified object.

(Inherited from Attribute)
GetConsumerType(Type) GetConsumerType(Type) GetConsumerType(Type) GetConsumerType(Type)

Devuelve el tipo de consumidor que un transformador puede aceptar en un punto de conexión.Returns the consumer type a transformer can accept on a connection point.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Devuelve el código hash de esta instancia.Returns the hash code for this instance.

(Inherited from Attribute)
GetProviderType(Type) GetProviderType(Type) GetProviderType(Type) GetProviderType(Type)

Devuelve el tipo de proveedor que un transformador puede aceptar en un punto de conexión.Returns the provider type a transformer can accept on a connection point.

GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object) Match(Object) Match(Object) Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Inherited from Object)

Implementaciones de interfaz explícitas

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Se aplica a