日期:2014-05-20  浏览次数:20781 次

c# 中方法前用[]括起来的东西作用
代码中有很多时候出现用[]括起来的东西他们的作用谁能解释一下
比如:
[DllImport("User32.dll")]
  private static extern bool ShowWindowAsync(IntPtr hWnd, int cmdShow);
还有这个:
[XmlArray, XmlArrayItem(ElementName = "entity", IsNullable = false, Type = typeof(BusinessEntity))]
  public List<BusinessEntity> BusinessEntities
  {
  get
  {
  return this._businessEntities;
  }
  set
  {
  this._businessEntities = value;
  }
  }

有多少用法请详细说一下,谢谢!本人比较棒槌。

------解决方案--------------------
attribute 用于自定义的一些标记。
------解决方案--------------------
属性标记
------解决方案--------------------
数组也用啊,int[]。

LZ那样的话,用MSDN的解释如下:
Attribute 类将预定义的系统信息或用户定义的自定义信息与目标元素相关联。目标元素可以是程序集、类、构造函数、委托、枚举、事件、字段、接口、方法、可移植可执行文件模块、参数、属性 (Property)、返回值、结构或其他属性 (Attribute)。

属性所提供的信息也称为元数据。元数据可由应用程序在运行时进行检查以控制程序处理数据的方式,也可以由外部工具在运行前检查以控制应用程序处理或维护自身的方式。例如,.NET Framework 预定义属性类型并使用属性类型控制运行时行为,某些编程语言使用属性类型表示 .NET Framework 公共类型系统不直接支持的语言功能。 

所有属性类型都直接或间接地从 Attribute 类派生。属性可应用于任何目标元素;多个属性可应用于同一目标元素;并且属性可由从目标元素派生的元素继承。使用 AttributeTargets 类可以指定属性所应用到的目标元素。 

Attribute 类提供检索和测试自定义属性的简便方法。有关使用属性的更多信息,请参见利用属性扩展元数据。