8

次のように定義された2つのカスタム属性があります。

internal class SchemaAttribute : Attribute {
    internal SchemaAttribute(string schema) {
        Schema = schema;
    }

    internal string Schema { get; private set; }
}

internal class AttributeAttribute : Attribute {
    internal AttributeAttribute(string attribute) {
        Attribute = attribute;
    }

    internal string Attribute { get; private set; }
}

SchemaAttributeをクラスに制限し、AttributeAttributeをプロパティに制限したいと思います。

これは実行可能ですか?

4

2 に答える 2

14

AttributeUsageAttributeTargetsを確認してください。

次のようになります。

[AttributeUsage(AttributeTargets.Class)]
internal class SchemaAttribute : Attribute
{
    // Implementation
}

[AttributeUsage(AttributeTargets.Property)]
internal class AttributeAttribute : Attribute
{
    // Implementation
}
于 2010-05-21T18:05:25.847 に答える
4

AttributeTargetAttributeを見てください

[AttributeTarget(AttributeTargets.Class)]
internal class SchemaAttribute : Attribute
...

[AttributeTarget(AttributeTargets.Property)]
internal class AttributeAttribute: Attribute
...
于 2010-05-21T18:07:46.040 に答える