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 型は 2 つのデータ メソッドを公開しています。1 つは GetAllEmployees という名前のデータ セットを取得し、もう 1 つは 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, 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)

適用対象