Downloads of v 2.2.0


Average downloads per day


Last published

Share on Social Networks



Npgsql is a .Net data provider for Postgresql. It allows any program developed for .Net framework to access database server. It is implemented in 100% C# code. Postgresql 9.x and above is officially supported.

To install Npgsql, run the following command in the Package Manager Console

Install-Package Npgsql -Version 2.2.0

Release Notes

This is Npgsql 2.2.0 Final Release (https://github.com/npgsql/Npgsql/releases/tag/v2.2.0)

This release contains 249 commits since the last stable release. Includes bug fixes, improvements and new features.

Update notice: If you have been using Npgsql 2.2.0-rc2, you don't need to update to this version. They are the same except for the Assembly version information.

Major highlights

Visual Studio DDEX support

Kenji Uno added support for DDEX. Now you can use Npgsql with Visual Studio data designer. This is a missing feature a lot of our users requested in the past. Kenji added a tutorial about how to use Npgsql with DDEX. You can find it here: https://github.com/npgsql/Npgsql/wiki/Visual-Studio-Design-Time-Support---DDEX-Provider#install-npgsqlddexprovidervsix
Entity Framework

David Karlaš added support for EFMigration and Database creation in EF6+.
Now it is possible to start Code First projects without needing to create a database upfront. EntityFramework and Npgsql will take care of it.
Emil Lenngren added support for a lot of missing features of EntityFramework.

A list containing fixes from David and Emil as well as others for EntityFramework can be seen here: https://github.com/npgsql/Npgsql/issues?direction=desc&labels=entity+framework&milestone=2&page=1&sort=created&state=closed

SSLStream support

In this release, SSLStream is on by default.
If you want to use Mono.Security, you will need to use the following line in your code:

NpgsqlConnection.UseSslStream = false;

Note that in future releases, this option may not be available anymore as we are removing the dependency on Mono.Security assembly. Let us know in the forums if you have any problem with ssl when using SSLStream. This will help us check if we will be able to remove Mono.Security assembly.

Added support for JSON, JSONB and HSTORE datatypes

Shay added support for those datatypes.

Added GSSAPI support on Windows

Brian Crowell added support for GSSAPI on windows. Now it is easier to use Active Directory when authenticating users.

Removed support for protocol v2

Postgresql versions which use only protocol 2 are very old and don't receive support from postgresql group anymore. By removing support for protocol version 2, we removed a lot of code and can focus on functionalities provided by protocol 3.
Removed support for Postgresql 8.4 and below

In this thread, we talked about making Npgsql support the officially supported postgresql versions. we talked about making Npgsql support the officially supported postgresql versions. Postgresql has a table of officially supported versions and we decided to follow this table to guide us which postgresql version we will have support to.

This doesn't necessarily mean that Npgsql won't work on unsupported versions. It may work if we don't add any SQL or unsupported feature. For example, today Npgsql 2.2 works only on Postgresql 8.2 and above because we added server side support for command timeout handling and some other queries which aren't supported on earlier versions.

If you are using earlier postgresql versions, please, use an older version of Npgsql. We are creating a compatibility table to show which Postgresql version Npgsql works with.

Fixed bugs:

[#91] Support for EFMigration and Database creation
[#152] NpgsqlInterval different constructors different ToString
[#158] NpgsqlCommand.Dispose() should execute "DEALLOCATE " for a prepared command
[#177] XML data type doesn't seem to be quoting parameters properly on insert
[#179] NpgsqlCommandBuilder automatic sql commands configuration
[#188] Buffer too small problem in NpgsqlCopySerializer
[#201] Dynamic type parameters: Cannot cast System.Int32 into any valid DbType after upgrading from to
[#208] ObjectDisposeException
[#217] Impossible to insert a Double.NaN value
[#219] [#1011005] using 2 NpgsqlCopyIn at the same time
[#223] HasRows property's bug
[#231] NpgsqlParameterCollection.Clear() doesn't reset NpgsqlParameter.Collection
[#225] Handle IEnumerable parameter
[#233] Cannot insert to tables which have only one column
[#246] Take followed by Skip is generated incorrectly in Entity Framework
[#262] FirstOrDefault() on navigation property subquery throws “Not Implemented” Exception
[#264] Mono.Security is outdated
[#269] Fix 's' value mapped to the 'a' byte
[#280] Bad SQL produced when selecting a field that was also used in the orderBy of a let subquery
[#287] Fix operator handling and date functions for EF
[#296] parameter parsing fails (regression) and duplicate [#240] NpgSqlCommand does not substitute parameters when there is a string with escaped apostrophe
[#315] Fix query parameter processing to more correctly match PostgreSQL's lexer

A list of the issues and pull requests merged for this release can be found at github here: https://github.com/npgsql/Npgsql/issues?direction=desc&milestone=2&page=1&sort=created&state=closed

Known Issues

There are some issues we are working for the next maintenance release 2.2.1. You can check which issues we are working on here: https://github.com/npgsql/Npgsql/issues?q=milestone%3A2.2.1


I'd like to give a special thanks to Kenji Uno for his excellent work with Npgsql DDEX support. DDEX support was one of the biggest missing features of Npgsql.

I'd like to thank Emil Lenngren for all his work with Entity Framework improvements and insightful comments, David Karlaš for his help with Entity Framework support. Shay Rojansky, Glen Parker and Josh Cooley for all contributions and comments, and a big thanks to all the other contributors who helped us to make this release.

List of contributors for this release

Kenji Uno
Shay Rojansky
Glen Parker
Emil Lenngren
David Karlaš
Brian Crowell
Tuan Nguyen
Frans Bouma
Jaspalsinh Chauhan
Josh Cooley
Martin Willey
Francisco Figueiredo Jr.
Javier Torres
Kevin Pullin
Michael de Lang
Oskar Gewalli
Sunny Ahuwanya
Thomas Radioyes



Francisco Figueiredo Jr., Josh Cooley, Dave Page, Jon Asher, Brar Piening, Chris Morgan, Hiroshi Saito, Jon Hanna, Federico Di Gregorio, Glen Parker, Shay Rojansky


Copyright 2002 - 2014 Npgsql Development Team



This package has no dependencies.

Version History

Version Downloads Last updated
Npgsql 24,567 Thursday, June 22, 2017
Npgsql 3.2.4 7,262 Tuesday, June 13, 2017
Npgsql 3.2.3 15,050 Thursday, June 1, 2017
Npgsql 3.2.2 172,421 Tuesday, March 21, 2017
Npgsql 3.2.1 43,417 Tuesday, February 14, 2017
Npgsql 3.2.0 28,693 Friday, January 27, 2017
Npgsql 3.2.0-beta1 1,365 Wednesday, January 11, 2017
Npgsql 3.1.10 5,753 Tuesday, February 14, 2017
Npgsql 3.1.9 207,836 Sunday, November 20, 2016
Npgsql 3.1.8 95,853 Saturday, September 24, 2016
Npgsql 3.1.7 79,210 Saturday, August 6, 2016
Npgsql 3.1.6 30,111 Tuesday, July 12, 2016
Npgsql 3.1.5 107,274 Tuesday, June 28, 2016
Npgsql 3.1.4 10,489 Thursday, June 16, 2016
Npgsql 3.1.3 65,832 Monday, May 30, 2016
Npgsql 3.1.2 10,304 Sunday, May 22, 2016
Npgsql 3.1.1 2,537 Thursday, May 19, 2016
Npgsql 3.1.0 28,656 Monday, May 16, 2016
Npgsql 3.1.0-beta0001 1,185 Thursday, May 5, 2016
Npgsql 3.1.0-alpha6 17,616 Monday, December 7, 2015
Npgsql 3.1.0-alpha5 4,621 Wednesday, November 18, 2015
Npgsql 3.1.0-alpha4 144 Wednesday, November 18, 2015
Npgsql 3.1.0-alpha3 2,541 Friday, October 16, 2015
Npgsql 3.1.0-alpha2 297 Friday, October 16, 2015
Npgsql 3.1.0-alpha1 1,459 Sunday, September 6, 2015
Npgsql 3.0.8 3,339 Thursday, June 16, 2016
Npgsql 3.0.7 12,166 Tuesday, May 3, 2016
Npgsql 3.0.6 1,891 Sunday, May 1, 2016
Npgsql 3.0.5 87,329 Friday, January 1, 2016
Npgsql 3.0.4 12,246 Sunday, December 6, 2015
Npgsql 3.0.3 33,553 Sunday, September 27, 2015
Npgsql 3.0.2 10,156 Friday, September 4, 2015
Npgsql 3.0.1 17,971 Tuesday, August 18, 2015
Npgsql 3.0.0 10,329 Friday, August 7, 2015
Npgsql 3.0.0-rc0002 863 Friday, July 17, 2015
Npgsql 3.0.0-rc0001 344 Sunday, July 12, 2015
Npgsql 3.0.0-beta0001 958 Monday, May 25, 2015
Npgsql 2.2.7 54,575 Friday, September 18, 2015
Npgsql 2.2.6 8,000 Thursday, August 27, 2015
Npgsql 2.2.5 87,552 Wednesday, March 11, 2015
Npgsql 14,708 Friday, February 6, 2015
Npgsql 5,472 Tuesday, February 3, 2015
Npgsql 2.2.3 64,869 Wednesday, November 26, 2014
Npgsql 2.2.2 9,471 Saturday, November 1, 2014
Npgsql 2.2.1 14,962 Wednesday, September 24, 2014
Npgsql 2.2.0 (this version) 6,320 Monday, September 1, 2014
Npgsql 2.2.0-rc2 1,652 Sunday, August 17, 2014
Npgsql 2.2.0-rc1 430 Tuesday, August 5, 2014
Npgsql 2.2.0-beta1 297 Wednesday, July 23, 2014
Npgsql 2.1.3 20,277 Wednesday, April 9, 2014
Npgsql 2.1.2 3,597 Friday, March 28, 2014
Npgsql 2.1.1 9,575 Friday, March 21, 2014
Npgsql 2.1.0 2,340 Wednesday, March 19, 2014
Npgsql 2.1.0-rc1 865 Sunday, February 9, 2014
Npgsql 2.1.0-beta1 1,532 Thursday, December 26, 2013
Npgsql 27,936 Saturday, December 21, 2013
Npgsql 2.0.13-beta1 1,699 Sunday, July 14, 2013
Npgsql 33,665 Monday, December 17, 2012
Npgsql 2.0.11 29,528 Sunday, February 6, 2011