Plugin & Package Week: Stato dell’arte della community .NET con Nuget

Mi è capitato di perdere qualche ora su Nuget online per vedere quale fosse lo stato dell’arte dei famosi package disponibili per lo sviluppo .NET e, già che ci sono, li recensisco.

Cominciamo a parlare di NuGet: molti lo conosceranno già, altri no. Dopo qualche anno dopo Maven (per Java) cominciavo a sentire in effetti la mancanza di un analogo (anche se la differenza strutturale e oggettiva è enorme) per .NET. L’idea di scricare le dipendenze da quel sito o quell’altro, scompattare lo zip, inserire nel progetto la DLL e così via.. ..mi snervava. Così è arrivato NuGet: una estensione di Visual Studio che ci permette di aggiungere dipendenze semplicemente cliccando con il tasto destro sul progetto e selezionando Add Library Package Reference. A questo punto però l’universo di Plugin/Package è abbastanza grosso, sostanzialmente tutti i progetti Open di CodePlex che hanno già aderito a NuGet sono disponibili: è quindi necessario un lavoro di scrematura per capire quali possano essere usati ed in quali circostanze. Ecco qui una recensione parziale di quelli che reputo più interessanti (il nome mostrato può anche essere usato per il comando Install-Package):




This package contains web helpers to easily add functionality to your site such as Captcha validation, Twitter profile and search boxes, Gravatars, Video, Bing search, site analytics or themes.

Include anche l’helper per accedere a Facebook e Twitter per applicazioni WebMatrix ocn sintassi Razor (include Facebook.Helper e Twitter.Helper).


A NuGet package that allows other packages to execute some startup code in web apps.

Questo package tramite Attributi decora i metodi che devono essere chiamati nelle fasi di startup e shutdown di una applicazione senza che debbano essere chiamati dal Global.asax.


The PayPal helper allows you to integrate PayPal payments within your WebMatrix website or e-commerce application. With a few lines of code you'll enable your Website customers to click on a payment buttons to pay for their purchases with their PayPal accounts.



Spark View Engine Core.


Set of simple and clean, yet very useful components for developing ASP.NET Web Form applications. Includes embedded popular Silk icon set.


Linq to Objects for JavaScript. This version is plugin integrated with jQuery.


NDjango is an implementation of the Django Template Language on the .NET platform, using the F# language.


reCAPTCHA is a free CAPTCHA service that helps to digitize books, newspapers and old time radio shows.


HTML5 Setup adds support for video, audio and font file types used by HTML5 and CSS3.

Dati e Database


NHibernate 3 - NHibernate is a mature, open source object-relational mapper for the .NET framework. It's actively developed , fully featured and used in thousands of successful projects.

Non c’è bisogno di descrivere cosa faccia, teniamo conto però che include l’installazione di Iesi.Collections, Antlr e Castle.Core.


CTP5 of the Code First Programming Model and Productivity Improvements for Entity Framework 4 (included in .NET Framework 4).

Inoltre, se vogliamo un esempio => EFCodeFirst.Sample


SQL Server Compact. An embedded SQL database.


Allows SQL Server Compact 4.0 to be used with Entity Framework Feature CTP5.


The OData Helper makes it easy to write queries against OData-enabled services with the minimum amount of code.


Scaffolders for LINQ to SQL repositories and data contexts


Raven is a document database for the .NET/Windows platform, offering a flexible data model design to fit the needs of real world systems.


LINQKit is a free set of extensions for LINQ to SQL and Entity Framework power users.


NoRM (http://normproject.org) is a .NET driver for the document database MongoDB


FileDB is a free, fast, lightweight C# (v3.5) DLL project to store, retrieve and delete files using a single archive file as a container on disk


A database-like interface to Google Spreadsheets for .Net

Utile anche in abbinamento a LINQ (GDataDB.Linq)


An in process NoSQL database / document store for when you need a full managed solution.


Official 10gen supported C# driver for MongoDB


Easy to use library to use CSV and tab delimited files with LINQ queries

Testing & Logging


log4net is a tool to help the programmer output log statements to a variety of output targets. log4net is a port of the excellent log4j framework to the .NET runtime


ELMAH (Error Logging Modules and Handlers) is an application-wide error logging facility that is completely pluggable. It can be dynamically added to a running ASP.NET web application, or even all ASP.NET web applications on a machine, without any need for re-compilation or re-deployment.


NUnit is a unit-testing framework for all .Net languages. Initially ported from JUnit, the current production release, version 2.5, is the sixth major release of this xUnit based unit testing tool for Microsoft .NET.


NBug is a .NET library created to automate the bug reporting process. It automatically creates and sends: * Bug reports, * Crash reports with minidump, * Error/exception reports with stack trace + ext. info. It can also be set up as a user feedback system (i.e. feature requests).


Application Architecture


A fast and customizable way to add controllers, views, and other items to your ASP.NET MVC application


A fast and customizable way to build parts of your .NET application via templates


Stop writing monolithic applications that make you feel like you have to move mountains to make the simplest of changes. Ninject helps you use the technique of dependency injection to break your applications into loosely-coupled, highly-cohesive components, and then glue them back together in a flexible manner.


The Unity Application Block (Unity) is a lightweight extensible dependency injection container with support for constructor, property, and method call injection. Unity addresses the issues faced by developers engaged in component-based software engineering. Modern business applications consist of custom business objects and components that perform specific or generic tasks within the application, in addition to components that individually address cross cutting concerns such as logging, authentication, authorization, caching, and exception handling.


Castle Windsor is best of breed, mature Inversion of Control container available for .NET and Silverlight.


Castle DynamicProxy is a library for generating lightweight .NET proxies on the fly at runtime. Proxy objects allow calls to members of an object to be intercepted without modifying the code of the class.


The most popular open-source service bus for .net


MEF Contrib is a community-developed library of extensions to the Managed Extensibility Framework (MEF).


Social Integration


The Facebook C# SDK core.

Include Newtonsoft.Json (Json.NET is a popular high-performance JSON framework for .NET)


The Facebook C# SDK web component.


TweetSharp is the most popular .NET library for easily integrating Twitter with your applications.

Funziona con .NET 2.0, 3.5SP1, 4.0, WP7, SL 4 (elevato) e Mono 2.6


Facebook Connect Authentication for ASP.NET is a component that allows ASP.NET web developers to identify and validate users accessing their website or web services using Facebook Connect.


A library that simplifies the "Login with Linked-In" process inside a web application. Depends on Hammock but due to a bug in the current version of Hammock this package contains a modified version. Still in early-development.


Windows Development


An easy service hosting framework for building Windows services using .NET


Windows API Code Pack for Microsoft. NET Framework provides a source code library that can be used to access some features of Windows 7 and Windows Vista from managed code. These Windows features are not available to developers today in the .NET Framework.


(Windows Forms) The .NET Extensions project is a growing library of C# und VB.NET extension methods. The project is part of a monthly column published by Patrick A. Lorenz (www.pgk.de) in the German print magazine "dotnetpro" (www.dotnetpro.de). You can expect monthly updates.




Detect mobile devices, get really accurate handset properties and redirect to web pages designed for mobile devices. Request.Browser properties will be populated with data from the WURFL open source project.


A toolkit with multiple controls and useful items for Windows Phone Silverlight applications


An MVVM library for WP7 that is deeply integrated with the Reactive Extensions


The Entile Notification Framework helps you when doing Live Tiles and Toasts for your Windows Phone 7 app. The framework consist of a client part installed in your phone app (the 'entile-client' package) and a server part which can be installed in any IIS hosted web site/service (this package). Install this package into a web site/wcf service project to get started using Entile.


Sterling object-oriented database for Silverlight Windows Phone applications.




#ziplib (SharpZipLib, formerly NZipLib) is a Zip, GZip, Tar and BZip2 library written entirely in C# for the .NET platform. It is implemented as an assembly (installable in the GAC), and thus can easily be incorporated into other projects (in any .NET language).


iText# (iTextSharp) is a port of the iText open source java library for PDF generation written entirely in C# for the .NET platform.


Hammock is an HTTP API library for .NET that greatly simplifies consuming and wrapping RESTful services.

Funziona con .NET 2.0, 3.5SP1, 4.0, WP7, SL 3 e 4 e Mono 2.6


A powerful and extensible .NET web content syndication framework for RSS, Atom, OPML, APML, BlogML, RSD and more. The Argotic Syndication Framework is a Microsoft .NET class library framework that enables developers to easily consume and/or generate syndicated content from within their own applications


A task scheduler that uses fluent interface to configure schedules. Useful for running cron jobs/automated tasks from your application.


FluentPath is a fluent wrapper around System.IO. This package requires .NET 4.0.


Managed Library for Nintendo's Wiimote.


Formats strings with named parameters with a given object, like "Hello {FirstName} {LastName}".


Command line parser for .NET. Parses command line parameters into custom POCO objects.


Shouldly - Assertion framework for .NET. The way asserting *Should* be.


This is a C# library for communicating with the Authorize.NET payment gateway (using the Advanced Integration Method - AIM). Echeck is also supported.


Ftp.dll is a .NET FTP client library.


Allows you to topologically sort a list of objects by defining dependencies between them e.g. sorting build tasks or rules in a Chain Of Responibility


A set of C# extension methods intended to enhance the development exprience.


Generates random pronounceable words based on trigram probabilities.




This toolkit was built by Thuzi in collaboration with Microsoft to give the community a good starter kit for developing on Windows Azure.


Google Data API Documents Library

Un progetto enorme che racchiude accesso ai dati tramite GData e quindi verso una marea di provider.


cloud4net is a framework to abstract cloud storage implementations, like ADO.net does for databases. Management tools are also provided.


cloud4net is a framework to abstract cloud storage implementations, like ADO.net does for databases. Management tools are also provided.

by Roberto Freato on 3/10/2011
Post archive