0

VB.NETで、次のようなことができますか?

Interface X
    <SomeAttrib> _
    SomeProp as String
End Interface

これにより、Xを実装するクラスはSomePropにもSomeAttribを適用し、それ以外の場合はコンパイル(または実行)時のエラーが発生します。

Class XBox
    Implements X

    Public SomeProp as String Implements X.SomeProp
        ...
    End Property
End Interface

上記はSomeProp適用されないため、エラーが発生するはずSomeAttribです。

4

1 に答える 1

2

いいえ、属性はインターフェースによって適用される署名の一部ではありません。

これがカスタムプロパティである場合は、それを探しているものが何であれ、型がインターフェイスを実装しているかどうかをチェックし、代わりにそこから属性をフェッチするようにすることができます。

または、すべての実装を検証するための単体テストをいつでも作成できます(コンパイル時のチェックと通常の実行時のチェックの間の何か)。

于 2013-03-13T08:01:45.583 に答える