CommonLibrary.NET

A collection of very reusable code and components in C# 4.0 ranging from ActiveRecord, Csv, Command Line Parsing, Configuration, Validation, Logging, Collections, Authentication, and much more.
This is ideal for C# developer looking for a Utility library, Java developers looking for a C# version of Java Commons.

Target Framework : .NET C# 4.0 for current version. 3.5 for prior versions

http://www.NDepend.com
NDepend is a Visual Studio tool to manage complex .NET code and achieve high Code Quality
  • Powering ASP.NET MVC CommonLibrary CMS
  • Improved ActiveRecord, Entities, Repository<T>
  • Bug fixes ( for several components including CSV Parser )
  • Documentation & More Examples ( Check the documentation tab above and also the downloadable .chm. )
  • Args.Parse( "-env:QA -log:qa.log -sendEmail 100" )
  • Csv.Load( "stockdata.csv", true)
  • Config.Load( "prod.config,dev.config" )
  • Crypto.Decrypt("asdy720sj=")


Account Example Account component for Users/Groups/Roles. (With easily pluggable repository)
ActiveRecord Example Light-weight ActiveRecord pattern supporting CRUD/Find methods. Single entity-table relationships only
Application Example A template base class for any application, providing environment selection(Dev,Qa,Prod), logging, error handling, configuration and exit codes support.
Arguments Example Command line arguments parser: supports named/positional args, and several other features
Authentication Example An pluggable authentication API. Used for web/windows, wraps HttpContext.Current.User and/or Windows Prinicial.
Automation Example A light-weight automation runner using xml/command line for running tasks associated with c# classes.
BenchMark Example Light-weight class to provide benchmarking support to measure time used to run code.
BootStrapper Example Runs tasks on startup and shutdown of an application.
Cache Example Cache w/ default implementation using HttpRuntime. Can prefix keys and inspect/describe elements in cache.
Captcha N/A Service for generating Captcha images.
Category N/A Node based category/sub-category service.
CodeGenerator Example Fluent based entity generator for CommonLibrary entities
Collections N/A Contains all sorts of Dictionaries ( MultiValue, Bi-Directional, Ordered, DictionarySet ), Hybrid Enumerator and more
Config Example Provides inheritance based configuration data from files or databases
Cryptography Example Cryptographic services for encrypting, decrypting, hashing
Csv Example Csv parser to parse .csv ( delimited files ) and a light-weight Csv writer
Database Example Provides simplified access to multiple database related operations
Diagnostics Example Provides information on environment variables, processes, loaded modules etc
Entity Example Domain-Driven-Design based entity classes used for persistance
Environments Example Object representation of environments such as "DEV", "QA", "UAT", "PROD"
Errors Example Collection class combining both list and key/value based string error messages.
Exceptions N/A Exception / Error handler class.
Extensions Example Provides plugin-type functionality to dynamically load specific classes/types from an assembly
Extensions_Macros Example Similar to wordpress shortcodes. Parses text for macros and replace the macro in text with value returned by macro
Feeds N/A Service to support RSS, Atom, Xml Serialization
HolidayCalendar Example Gets holidays or business days for different calendars ( U.S / England/ France )
ImportExport Example Provides API for import/export operations on any abitrary datastore of objects
Information N/A Plugin components used for generating simple reports/informational text.
IocContainer N/A Generic wrapper around any Inversion Of Control container to avoid hard references to SpringIoC, Unity, CastleWindsor.
Location Example Provides City, State, Country search features. e.g. "Brooklyn, Ny" is parsed into a City/State/Country object
Logging Example Logger that's light-weight, extensible, and provides a clear/fluent API to logging.
Maps N/A Service to build urls for google/yahoo maps.
NamedQuery N/A Save and name sql queries for easy re-use. e.g. "Top 10 Recent Posts" = "select top 10 * from ..".
Notifications Example Generates templated messages for email
Paging Example Independent and reusable pager for paging through data
Query N/A A light-weight criteria pattern( similar to LINQ ) to programmatically build a query such as Query<Person>().Where( p => p.Name).Is("kishore").
QueueProcessor Example A flexible queue to allow placing items into a queue for processing
Repository Example Repository implementation supporting CRUD/Find methods and sql-like aggregates(Min,Max,Count,Avg,Sum)
Scheduler Example Light-weight task scheduling service
Scripts Example Used to register css/javascript files into "placeholders" such as head or footer section.
ToDo Example Typed marker (like visual studio "TODO" ) to mark code
Validation Example Provides several validation methods for email, phone, string length etc.
Web N/A Several web related helper classes and methods
Xml N/A Various xml helper classes / methods


MORE TO COME!!!
Feed back appreciated.

Many of the components in CommonLibraryNET implement a provider model, allowing you to plugin different implementations
for various components using different frameworks.

Click here for some examples of using CommonLibrary.Net.

Last edited May 21, 2011 at 6:44 PM by kishore_reddy, version 111