我已经看到,在某些情况下,我们在 c# 中使用以下语法格式,
[something]
void methodM(){
}
例子 :
[MethodImpl(MethodImplOptions.Synchronized)]
public void SomeMethod() {/* code */}
[WebMethod]
public void MyWebMethod(){/* code */}
这在编译时如何工作?
我已经看到,在某些情况下,我们在 c# 中使用以下语法格式,
[something]
void methodM(){
}
例子 :
[MethodImpl(MethodImplOptions.Synchronized)]
public void SomeMethod() {/* code */}
[WebMethod]
public void MyWebMethod(){/* code */}
这在编译时如何工作?
这些是属性或注释。它们是放置它们的成员的一种元数据。
例如,使用MethodImpl属性,您可以指定如何实现方法的详细信息。并且使用WebMethod属性,您将该方法标记为 Web 服务方法。
[something]
是一个属性。属性存储在程序集的元数据中,可以通过反射读取。库和框架经常使用它来控制行为。一些属性,如ObsoleteAttribute
控制编译时行为,但大多数会影响运行时行为。您可以通过继承来创建自己的属性Attribute
。
这些是属性[something],它们是描述性标签,可用于提供有关类型(类)、成员和属性的附加信息。.NET可以使用属性来决定在应用程序运行时如何处理对象。