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 атрибут к общедоступному методу и определить тип выполняемой операции с данными, а также определить, является ли он методом данных типа по умолчанию. В этом примере NorthwindData
тип предоставляет два метода данных: один для получения набора данных с именем GetAllEmployees
, а другой — для удаления данных с именем DeleteEmployeeByID
. Атрибут 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) |
Инициализирует новый экземпляр класса DataObjectMethodAttribute и определяет тип операций с данными, выполняемых методом. |
DataObjectMethodAttribute(DataObjectMethodType, Boolean) |
Инициализирует новый экземпляр класса 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) |