DataObjectMethodAttribute Класс

Определение

Определяет метод операции данных, предоставляемый типом, типом операции, выполняемой методом, и указывает, является ли метод данным по умолчанию. Этот класс не наследуется.

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
Наследование
DataObjectMethodAttribute
Атрибуты

Примеры

В следующем примере кода показано, как применить DataObjectMethodAttribute атрибут к общедоступному методу и определить тип выполняемой операции данных, а также определить, является ли он методом данных по умолчанию типа. В этом примере NorthwindData тип предоставляет два метода данных: один для извлечения набора данных с именем, а другой — для удаления данных с именемGetAllEmployeesDeleteEmployeeByID. Атрибут DataObjectMethodAttribute применяется к обоим методам, GetAllEmployees метод помечается как метод по умолчанию для операции выбора данных, а DeleteEmployeeByID метод помечается как метод по умолчанию для операции удаления данных.

[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

Комментарии

Можно использовать DataObjectMethodAttribute для идентификации методов операций данных в типе, DataObjectAttribute помеченном атрибутом, чтобы они были проще идентифицироваться вызывающими средствами с помощью отражения. DataObjectMethodAttribute Если атрибут применяется к методу, он описывает тип операции, выполняемой методом, и указывает, является ли метод операцией данных по умолчанию типом. Такие компоненты, как ObjectDataSource элемент управления и ObjectDataSourceDesigner класс, проверяют значения этого атрибута, если они присутствуют, чтобы определить, какой метод данных следует вызывать во время выполнения.

Конструкторы

Имя Описание
DataObjectMethodAttribute(DataObjectMethodType, Boolean)

Инициализирует новый экземпляр DataObjectMethodAttribute класса, определяет тип операции данных, выполняемой методом, и определяет, является ли метод данных по умолчанию предоставляемым объектом данных.

DataObjectMethodAttribute(DataObjectMethodType)

Инициализирует новый экземпляр DataObjectMethodAttribute класса и определяет тип операции данных, выполняемой методом.

Свойства

Имя Описание
IsDefault

Возвращает значение, указывающее, является ли метод, к которому DataObjectMethodAttribute применяется метод данных по умолчанию, предоставляемым объектом данных для определенного типа метода.

MethodType

DataObjectMethodType Возвращает значение, указывающее тип операции данных, выполняемой методом.

TypeId

При реализации в производном классе получает уникальный идентификатор для этого Attribute.

(Унаследовано от Attribute)

Методы

Имя Описание
Equals(Object)

Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту.

GetHashCode()

Возвращает хэш-код для этого экземпляра.

GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
IsDefaultAttribute()

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.

(Унаследовано от Attribute)
Match(Object)

Возвращает значение, указывающее, является ли этот экземпляр общим шаблоном с указанным атрибутом.

MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

Имя Описание
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Извлекает сведения о типе объекта, который можно использовать для получения сведений о типе для интерфейса.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к свойствам и методам, предоставляемым объектом.

(Унаследовано от Attribute)

Применяется к