WebPartTransformerAttribute Constructor (Type, Type)
Initializes a new instance of the WebPartTransformerAttribute class.
Assembly: System.Web (in System.Web.dll)
Parameters
- consumerType
-
Type:
System.Type
The Type of the interface supported by the consumer connection point.
- providerType
-
Type:
System.Type
The Type of the interface supported by the provider connection point.
| Exception | Condition |
|---|---|
| ArgumentNullException | consumerType or providerType is not specified. |
| InvalidOperationException | consumerType equals providerType. |
The WebPartTransformerAttribute constructor sets the consumer connection point type and the provider connection point type for the transformer. These values can be retrieved through the ConsumerType property and the ProviderType property, respectively.
The following code example demonstrates the use of a WebPartTransformerAttribute attribute with a customized WebPartTransformer class. The attribute indicates that the RowToStringTransformer class can transform a provider connection point of type IWebPartRow to a consumer connection point of type IString.
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(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
Available since 2.0