Standard business logic data classes for .NET

.net, boilerplate, business-objects

Solution

CSLA.NET might offer close to what yoju're looking for. It probably takes it a bit further than what you are asking, but it has some of the most comprehensive documentation of any framework (ie published books from APress). It is also free.

In particular the CSLA.ValidationRules namespace and the CommonRules and CustomRules classes focus on data validation.

Problem

There are a lot of "primitive" boiler plate types of data classes that could appear in many different programs. However, I have never seen a class or library set that recognizes the need to combine all these things with common logic required for them such as validation. Example classes ([] brackets correspond to classes also in hypothetical library): Address (street, postal code, city, state/territory/province, country) Person (name, contact info ([Phone]/[Email]/etc), [Address], SSN/TIN, [CreditCard]) Phone (number, country code, etc) CreditCard (type, number, expiration, ccv) ** And I'm sure someone could come up with plenty of others. I have developed my own Phone/Address/Person/CreditCard classes that I use in projects, complete with validation and logic. However I only am capable of validating US based information. My phone number class would ideally inherit from a base Phone class, as mine actually seperates the number into NPA, NXX and Station and validates it fully with NANP standards. Is there a set of libraries out there in the net that has a comprehensive collection of such boiler plate data classes with proper validation? Does it include validation for a world wide set of data, or just US data? And for the ** from CreditCard, is it capable of meeting PCI Data Security Standards? I know these are classes many people have probably written many times in many different languages, but is there any .NET library that fufills these desires? I would prefer opens source/free, though I would consider a paid 3rd party library set.

Original source