Nothing can compare to the Real Power of programming with attributes. Why, just one pair of square brackets and woosh – my object can be serialize to XML. Woosh – my object can persist to a database table. Woosh – there goes my object over the wire in a digitally signed SOAP payload. One day I expect to see a new item template in Visual Studio – the "Add New All Powerful Attributed Class" template: *
[Table]
[DataObject]
[DataContract]
[Serializable]
[TwoKitchenSinks]
[CLSCompliant(true)]
[DefaultProperty("Name")]
[DefaultBindingProperty("Name")]
[DebuggerStepThroughAttribute]
[GuidAttribute("F0DD2CAA-2132-11DD-AC50-FE9355D89593")]
public class Person
{
[Column]
[DataMember]
[XmlAttribute]
[Browsable(true)]
[ReadOnly(false)]
[Category("Advanced")]
[Description("The person's name")]
public string Name { get; set; }
// TODO: YOUR INSIGNIFIGANT BIZ LOGIC GOES HERE...
}
Which begs the question – could there ever be a way to separate attributes from the class definition?**
* Put down the flamethrower and step away - I'm kidding.
**This part was a serious question.
