元数据--自定义属性(VB.NET)
2024-07-10 13:00:47
供稿:网友
 
类文件:(class1)
imports system
imports system.reflection
<attributeusage(attributetargets.all, allowmultiple:=true, inherited:=true)> _
public class class1
 inherits system.attribute
 private familyname as string
 private givenname as string
 public sub new(byval familyname as string)
 me.familyname = familyname
 end sub
 public overrides function tostring() as string
 return string.format("author:{0}{1}", familyname, givenname)
 end function
 public property family() as string
 get
 return familyname
 end get
 set(byval value as string)
 familyname = value
 end set
 end property
 public property given() as string
 get
 return givenname
 end get
 set(byval value as string)
 givenname = value
 end set
 end property
end class 
--------------------------------------------------------------------------------
使用自定义属性的文件(form3.vb)
<class1("watkins", given:="damien"), class1("abrams")> _
public class form3
 inherits system.windows.forms.form
 private sub button1_click(byval sender as system.object, byval e as system.eventargs) handles button1.click
 dim t as type = type.gettype("windowsapplication6.form3")
 dim attributes as object() = t.getcustomattributes(true)
 console.writeline("custom attributes are: ")
 for each o as object in attributes
 console.writeline(o)
 next
 end sub
end class