C# では、MVC 3 のメソッドの上で呼び出されるブラケットは何ですか?
[ErrorHandler, SomethingHere]
public function Test() {
}
C# では、MVC 3 のメソッドの上で呼び出されるブラケットは何ですか?
[ErrorHandler, SomethingHere]
public function Test() {
}
「それらの括弧」が何を意味するのかわからない。関数の前にあるのは属性です。
Microsoft MSDN:System.Attribute
そして、使用法に関して少し拡張するには:
属性は、ソースコードの要素に配置でき、コンパイル時にアプリケーション固有の情報を格納するために使用できる注釈です。この情報はメタデータに保存され、アプリケーションの実行中、リフレクションと呼ばれるプロセスを介して、または別のツールがメタデータを読み取るときにアクセスできます。属性は、実行中のアプリケーションの動作を変更したり、オブジェクトに関するトランザクション情報を提供したり、設計者に組織情報を伝達したりする場合があります。gnu.org
これらは呼ばれAttributes
ます。属性は、抽象クラス System.Attribute から継承するクラスです。慣例により、すべての属性には「属性」という単語で終わるクラス名が付けられます。MVC3 属性の一部を次に示します。
AcceptViewAttribute
ActionFilterAttribute
ActionMethodSelectorAttribute
ActionNameAttribute
ActionNameSelectorAttribute
AuthorizeAttribute
BindAttribute
CustomModelBinderAttribute
FilterAttribute
HandleErrorAttribute
HiddenInputAttribute
HttpDeleteAttribute
HttpGetAttribute
HttpPostAttribute
HttpPutAttribute
ModelBinderAttribute
NonActionAttribute
OutputCacheAttribute
RequireHttpsAttribute
ValidateAntiForgeryTokenAttribute
ValidateInputAttribute
カスタム属性を作成できます
MVCランタイムは、Reflectionを使用して属性を検索します。次に、MVCは、検索された属性に関するこの情報を使用して、メソッドの実行方法、セキュリティ制限などを見つけます。
属性
Attributeという単語を推測するため、例は次のようになります。
[ErrorHandlerAttribute, SomethingHereAttribute]
public function Test() {
それらはメソッド属性と呼ばれます。あなたはmsdnサイトでもっと読むことができます