C#에서 MVC 3의 메서드 위에 호출 된 대괄호는 무엇입니까?C# 함수 접두사 특성 이름?
[ErrorHandler, SomethingHere]
public function Test() {
}
C#에서 MVC 3의 메서드 위에 호출 된 대괄호는 무엇입니까?C# 함수 접두사 특성 이름?
[ErrorHandler, SomethingHere]
public function Test() {
}
이들을 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
당신은 당신의 Custom Attributes
"그 대괄호"의 의미를 모르십니까? 함수 앞의 것은 속성입니다.
Microsoft MSDN: System.Attribute
및 사용에 관해서 조금 확장 : 속성 컴파일에 저장 응용 프로그램 특정 정보에 소스 코드의 요소에 배치하고 사용할 수있는 주석이
시각. 이 정보는 메타 데이터에 저장되며 응용 프로그램을 실행하는 동안 또는 반사라는 프로세스를 통해 또는 다른 도구가 메타 데이터를 읽을 때 액세스 할 수 있습니다. 특성은 실행 중에 응용 프로그램의 동작을 변경하거나 개체에 대한 트랜잭션 정보를 제공하거나 디자이너에게 조직 정보를 전달할 수 있습니다. gnu.org
이들을 메소드 속성이라고합니다. 당신은 그래서 당신의 예와 동의어,
그것은 단어의 특성을 유추 속성 msdn site
에 대한 자세한 내용을보실 수 있습니다 :
[ErrorHandlerAttribute, SomethingHereAttribute]
public function Test() {
MVC의 런타임 특성을 찾기 위해 반사를 사용합니다. 그런 다음 MVC는 위치에있는 속성에 대한이 정보를 사용하여 메소드 실행 방법, 보안 제한 사항 등을 확인합니다.
괄호가 호출 브래킷을 만들 수 있습니다. 둘 사이에 무엇이 의미하는지, 그것들은 속성입니다. – Servy
이 기술은 무엇이라고합니까? 함수 접두사? – JREAM
아니요, 제가 말했듯이, 그것들은 속성입니다. – Servy