AK.Commons 1.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package AK.Commons --version 1.0.0
NuGet\Install-Package AK.Commons -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AK.Commons" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add AK.Commons --version 1.0.0
#r "nuget: AK.Commons, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install AK.Commons as a Cake Addin
#addin nuget:?package=AK.Commons&version=1.0.0

// Install AK.Commons as a Cake Tool
#tool nuget:?package=AK.Commons&version=1.0.0

This is a general purpose commons library that I've built mostly for my own use within applications that I build (but obviously you are welcome to use it should you choose). The goal is to have an easy-to-use and uniform yet modular and pluggable facility to handle common cross-cutting concerns in my applications, thereby freeing me up to focus on the actual application concerns and hopefully making it easier and faster to build them.
     In general, the library consists of interfaces or SPIs along with ways to access them (using MEF). One can then build implementations for these interfaces (i.e. providers) and hook them up to an application through configuration. What this does for me is provide a uniform way to access these services in all my applications while allowing me to switch or extend providers as I see fit.
     For more detailed information and documentation, please visit the GitHub page for this repository at https://aashishkoirala.github.io/commons. You can find more of my stuff by visiting my page at https://aashishkoirala.github.io/.
     The package is free to download and use. The source code is open and provided under the GPL license.

Product Compatible and additional computed target framework versions.
.NET Framework net45 is compatible.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (6)

Showing the top 5 NuGet packages that depend on AK.Commons:

Package Downloads
AK.Commons.Web

This is the dedicated Commons Web Library to accopmany my Commons Library, which is a separate package that includes the following features. Constructs to support web environment initialization, as well as various utilities. Packaged libraries (such as Angular, Bootstrap, SignalR, etc.) in embedded form and a way to serve them (so that you don't have to keep including the scripts in every application). Static content minification components. REST-based resource mapping layer for Web API that lets you route resource requests directly to services without having to write controllers. Security components targeted specifically at single page applications (SPAs) that use WIF.

AK.Commons.Providers.DataAccess.MongoDb

This is an implementation of the data access interfaces in my Commons Library (http://aashishkoirala.github.io/commons) that is based on MongoDB. For more detailed information and documentation, please visit the GitHub page at http://aashishkoirala.github.io/commons-providers. You can find more of my stuff by visiting my page at http://aashishkoirala.github.io. The package is free to download and use. The source code is open and provided under the GPL license.

AK.Commons.Providers.DataAccess.FluentNHibernate

This is an implementation of the data access interfaces in my Commons Library (http://aashishkoirala.github.io/commons) that is based on Fluent NHibernate. For more detailed information and documentation, please visit the GitHub page at http://aashishkoirala.github.io/commons-providers. You can find more of my stuff by visiting my page at http://aashishkoirala.github.io. The package is free to download and use. The source code is open and provided under the GPL license.

AK.Commons.Providers.Azure

This is an implementation of various interfaces in my Commons Library (http://aashishkoirala.github.io/commons) for use with Windows Azure. You need the Azure SDK to use this. For more detailed information and documentation, please visit the GitHub page at http://aashishkoirala.github.io/commons-providers. You can find more of my stuff by visiting my page at http://aashishkoirala.github.io. The package is free to download and use. The source code is open and provided under the GPL license.

AK.Commons.Providers.Web.Bundling.Microsoft

This is an implementation of the web bundling interfaces in my Commons Library (http://aashishkoirala.github.io/commons) that is based on Microsoft's bundling provider. For more detailed information and documentation, please visit the GitHub page at http://aashishkoirala.github.io/commons-providers. You can find more of my stuff by visiting my page at http://aashishkoirala.github.io. The package is free to download and use. The source code is open and provided under the GPL license.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.3 2,296 12/30/2014
1.0.2 2,370 12/19/2014
1.0.1 1,852 12/16/2014
1.0.0 3,121 12/5/2014
0.1.3 1,558 11/22/2013
0.1.2 2,130 8/28/2013
0.1.1 2,730 7/31/2013

Added new Aspects namespace that includes components to support aspect-oriented programming.
     Breaking changes to the DataAccess namespace: a unit of work now spawns typed, scoped repositories that expose actual data access methods. This aligns more closely with my understanding of the unit-of-work/repository patterns.
     Added new DomainDriven namespace that includes components to support domain-driven design (DDD).
     Security components related to certificates and WIF.
     Bunch of service-related components having to do with WCF as well as an OperationResult group of classes that represent values and status of results of service operations.
     Added new Threading namespace for concurrency components- presently LockedObject and LockedValue classes that encapsulate reader/writer locking.
     Added various constructs such as an EnumDescription attribute for enum mebmers, a Perhaps class to represent things that may not be there, an IProviderSource interface to standardize named provider interfaces, along with new Uri handling methods.
     Breaking changes- removed Web components because: 1) all web-based components will be included in a new Commons Web Library, 2) I am deprecating bundling and OAuth-type security constructs that were originally defined in the Web namespace.