DataObjectMethodAttribute Classe

Définition

Identifie une méthode d’opération de données exposée par un type, quel type d’opération effectue la méthode et indique si la méthode est la méthode de données par défaut. Cette classe ne peut pas être héritée.

public ref class DataObjectMethodAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method)]
public sealed class DataObjectMethodAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method)>]
type DataObjectMethodAttribute = class
    inherit Attribute
Public NotInheritable Class DataObjectMethodAttribute
Inherits Attribute
Héritage
DataObjectMethodAttribute
Attributs

Exemples

L’exemple de code suivant montre comment appliquer l’attribut DataObjectMethodAttribute à une méthode exposée publiquement et identifier le type d’opération de données qu’il effectue, ainsi que s’il s’agit de la méthode de données par défaut du type. Dans cet exemple, le NorthwindData type expose deux méthodes de données : une pour récupérer un jeu de données nommé GetAllEmployees, et une autre pour supprimer des données nommées DeleteEmployeeByID. L’attribut DataObjectMethodAttribute est appliqué aux deux méthodes, la GetAllEmployees méthode est marquée comme méthode par défaut pour l’opération Select data, et la DeleteEmployeeByID méthode est marquée comme méthode par défaut pour l’opération Supprimer les données.

[DataObjectAttribute]
public class NorthwindData
{  
  public NorthwindData() {}

  [DataObjectMethodAttribute(DataObjectMethodType.Select, true)]
  public static IEnumerable GetAllEmployees()
  {
    AccessDataSource ads = new AccessDataSource();
    ads.DataSourceMode = SqlDataSourceMode.DataReader;
    ads.DataFile = "~//App_Data//Northwind.mdb";
    ads.SelectCommand = "SELECT EmployeeID,FirstName,LastName FROM Employees";
    return ads.Select(DataSourceSelectArguments.Empty);
  }

  // Delete the Employee by ID.
  [DataObjectMethodAttribute(DataObjectMethodType.Delete, true)]
  public void DeleteEmployeeByID(int employeeID)
  {
    throw new Exception("The value passed to the delete method is "
                         + employeeID.ToString());
  }
}
<DataObjectAttribute()> _
Public Class NorthwindData

  <DataObjectMethodAttribute(DataObjectMethodType.Select, True)> _
  Public Shared Function GetAllEmployees() As IEnumerable
    Dim ads As New AccessDataSource()
    ads.DataSourceMode = SqlDataSourceMode.DataReader
    ads.DataFile = "~/App_Data/Northwind.mdb"
    ads.SelectCommand = "SELECT EmployeeID,FirstName,LastName FROM Employees"
    Return ads.Select(DataSourceSelectArguments.Empty)
  End Function 'GetAllEmployees

  ' Delete the Employee by ID.
  <DataObjectMethodAttribute(DataObjectMethodType.Delete, True)> _
  Public Sub DeleteEmployeeByID(ByVal employeeID As Integer)
    Throw New Exception("The value passed to the delete method is " + employeeID.ToString())
  End Sub

End Class

Remarques

Vous pouvez utiliser l’outil DataObjectMethodAttribute pour identifier les méthodes d’opération de données sur un type marqué avec l’attribut DataObjectAttribute afin qu’elles soient plus facilement identifiées par les appelants à l’aide de la réflexion. Lorsque l’attribut DataObjectMethodAttribute est appliqué à une méthode, il décrit le type d’opération effectué par la méthode et indique si la méthode est la méthode d’opération de données par défaut d’un type. Les composants tels que le ObjectDataSource contrôle et la ObjectDataSourceDesigner classe examinent les valeurs de cet attribut, le cas échéant, pour déterminer la méthode de données à appeler au moment de l’exécution.

Constructeurs

Nom Description
DataObjectMethodAttribute(DataObjectMethodType, Boolean)

Initialise une nouvelle instance de la DataObjectMethodAttribute classe, identifie le type d’opération de données effectuée par la méthode et identifie si la méthode est la méthode de données par défaut exposée par l’objet de données.

DataObjectMethodAttribute(DataObjectMethodType)

Initialise une nouvelle instance de la DataObjectMethodAttribute classe et identifie le type d’opération de données que la méthode effectue.

Propriétés

Nom Description
IsDefault

Obtient une valeur indiquant si la méthode à laquelle l’application DataObjectMethodAttribute est appliquée est la méthode de données par défaut exposée par l’objet de données pour un type de méthode spécifique.

MethodType

Obtient une DataObjectMethodType valeur indiquant le type d’opération de données que la méthode effectue.

TypeId

En cas d’implémentation dans une classe dérivée, obtient un identificateur unique pour cette Attribute.

(Hérité de Attribute)

Méthodes

Nom Description
Equals(Object)

Retourne une valeur indiquant si cette instance est égale à un objet spécifié.

GetHashCode()

Retourne le code de hachage pour cette instance.

GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
IsDefaultAttribute()

En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut de la classe dérivée.

(Hérité de Attribute)
Match(Object)

Obtient une valeur indiquant si cette instance partage un modèle commun avec un attribut spécifié.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

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

Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch.

(Hérité de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Récupère les informations de type d’un objet, qui peuvent être utilisées pour obtenir les informations de type d’une interface.

(Hérité de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1).

(Hérité de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fournit l’accès aux propriétés et méthodes exposées par un objet.

(Hérité de Attribute)

S’applique à