MetadataTypeAttribute クラス

定義

データ モデル クラスに関連付けるメタデータ クラスを指定します。Specifies the metadata class to associate with a data model class.

public ref class MetadataTypeAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false)]
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)]
[System.AttributeUsage]
public sealed class MetadataTypeAttribute : Attribute
type MetadataTypeAttribute = class
    inherit Attribute
Public NotInheritable Class MetadataTypeAttribute
Inherits Attribute
継承
MetadataTypeAttribute
属性

次の例は、MetadataTypeAttribute を使用して、メタデータクラスをエンティティ部分クラスに関連付ける方法を示しています。The following example shows how to use the MetadataTypeAttribute to associate a metadata class with an entity partial class. この例では、RequiredAttribute 属性をデータフィールドに適用して、関連付けられたメタデータクラスに追加情報を提供する方法を示します。The example applies the RequiredAttribute attribute to a data field to show how to provide additional information in the associated metadata class.

using System;
using System.Web.DynamicData;
using System.ComponentModel.DataAnnotations;

[MetadataType(typeof(CustomerMetaData))]
public partial class Customer
{

}


public class CustomerMetaData
{
    // Apply RequiredAttribute
    [Required(ErrorMessage = "Title is required.")]
    public object Title;

}

Imports System.Web.DynamicData
Imports System.ComponentModel.DataAnnotations

<MetadataType(GetType(CustomerMetadata))> _
Partial Public Class Customer

End Class

Public Class CustomerMetadata

    ' Apply RequitedAttribute.
    <Required(ErrorMessage:="Title is required.")> _
    Public Title As Object

   
End Class

注釈

MetadataTypeAttribute 属性を使用すると、クラスをデータモデル部分クラスに関連付けることができます。The MetadataTypeAttribute attribute enables you to associate a class with a data-model partial class. この関連クラスには、データモデルに含まれていない追加のメタデータ情報を指定します。In this associated class you provide additional metadata information that is not in the data model.

たとえば、関連付けられているクラスでは、データフィールドに RequiredAttribute 属性を適用できます。For example, in the associated class you can apply the RequiredAttribute attribute to a data field. これにより、この制約がデータベーススキーマで要求されていない場合でも、フィールドに値が指定されます。This enforces that a value is provided for the field even if this constraint is not required by the database schema.

MetadataTypeAttribute 属性は次のように使用します。You use the MetadataTypeAttribute attribute as follows:

  • アプリケーションで、変更するデータモデル部分クラスを作成するファイルを作成します。In your application, create a file in which you create the data-model partial class that you want to modify.

  • 関連付けられたメタデータクラスを作成します。Create the associated metadata class.

  • MetadataTypeAttribute 属性を部分エンティティクラスに適用し、関連付けられているクラスを指定します。Apply the MetadataTypeAttribute attribute to the partial entity class, specifying the associated class.

この属性を適用する場合は、次の使用制約に従う必要があります。When you apply this attribute, you must adhere to the following usage constraints:

  • 属性は、クラスにのみ適用できます。The attribute can only be applied to a class.

  • 派生クラスによって属性を継承することはできません。The attribute cannot be inherited by derived classes.

  • 属性を適用できるのは1回だけです。The attribute can be applied only one time.

コンストラクター

MetadataTypeAttribute(Type)

MetadataTypeAttribute クラスの新しいインスタンスを初期化します。Initializes a new instance of the MetadataTypeAttribute class.

プロパティ

MetadataClassType

データ モデル部分クラスに関連付けられたメタデータ クラスを取得します。Gets the metadata class that is associated with a data-model partial class.

TypeId

派生クラスで実装されると、この Attribute の一意の識別子を取得します。When implemented in a derived class, gets a unique identifier for this Attribute.

(継承元 Attribute)

メソッド

Equals(Object)

このインスタンスが、指定されたオブジェクトと等価であるかどうかを示す値を返します。Returns a value that indicates whether this instance is equal to a specified object.

(継承元 Attribute)
GetHashCode()

このインスタンスのハッシュ コードを返します。Returns the hash code for this instance.

(継承元 Attribute)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
IsDefaultAttribute()

派生クラスでオーバーライドされるとき、このインスタンスの値が派生クラスの既定値であるかどうかを示します。When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(継承元 Attribute)
Match(Object)

派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(継承元 Attribute)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)

明示的なインターフェイスの実装

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

一連の名前を対応する一連のディスパッチ識別子に割り当てます。Maps a set of names to a corresponding set of dispatch identifiers.

(継承元 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。Retrieves the type information for an object, which can be used to get the type information for an interface.

(継承元 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(継承元 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。Provides access to properties and methods exposed by an object.

(継承元 Attribute)

適用対象