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 3.2.1 33,804 Tuesday, February 14, 2017
Npgsql 3.2.0 21,456 Friday, January 27, 2017
Npgsql 3.2.0-beta1 1,190 Wednesday, January 11, 2017
Npgsql 3.1.10 3,764 Tuesday, February 14, 2017
Npgsql 3.1.9 146,908 Sunday, November 20, 2016
Npgsql 3.1.8 80,282 Saturday, September 24, 2016
Npgsql 3.1.7 54,200 Saturday, August 6, 2016
Npgsql 3.1.6 28,516 Tuesday, July 12, 2016
Npgsql 3.1.5 91,186 Tuesday, June 28, 2016
Npgsql 3.1.4 10,266 Thursday, June 16, 2016
Npgsql 3.1.3 47,426 Monday, May 30, 2016
Npgsql 3.1.2 9,480 Sunday, May 22, 2016
Npgsql 3.1.1 2,370 Thursday, May 19, 2016
Npgsql 3.1.0 26,385 Monday, May 16, 2016
Npgsql 3.1.0-beta0001 1,123 Thursday, May 5, 2016
Npgsql 3.1.0-alpha6 17,530 Monday, December 7, 2015
Npgsql 3.1.0-alpha5 4,594 Wednesday, November 18, 2015
Npgsql 3.1.0-alpha4 121 Wednesday, November 18, 2015
Npgsql 3.1.0-alpha3 2,511 Friday, October 16, 2015
Npgsql 3.1.0-alpha2 262 Friday, October 16, 2015
Npgsql 3.1.0-alpha1 1,432 Sunday, September 6, 2015
Npgsql 3.0.8 2,939 Thursday, June 16, 2016
Npgsql 3.0.7 11,657 Tuesday, May 3, 2016
Npgsql 3.0.6 1,825 Sunday, May 1, 2016
Npgsql 3.0.5 83,603 Friday, January 1, 2016
Npgsql 3.0.4 11,903 Sunday, December 6, 2015
Npgsql 3.0.3 32,605 Sunday, September 27, 2015
Npgsql 3.0.2 9,960 Friday, September 4, 2015
Npgsql 3.0.1 17,114 Tuesday, August 18, 2015
Npgsql 3.0.0 10,003 Friday, August 7, 2015
Npgsql 3.0.0-rc0002 800 Friday, July 17, 2015
Npgsql 3.0.0-rc0001 309 Sunday, July 12, 2015
Npgsql 3.0.0-beta0001 927 Monday, May 25, 2015
Npgsql 2.2.7 49,294 Friday, September 18, 2015
Npgsql 2.2.6 6,886 Thursday, August 27, 2015
Npgsql 2.2.5 81,980 Wednesday, March 11, 2015
Npgsql 14,305 Friday, February 6, 2015
Npgsql 5,310 Tuesday, February 3, 2015
Npgsql 2.2.3 58,435 Wednesday, November 26, 2014
Npgsql 2.2.2 9,356 Saturday, November 1, 2014
Npgsql 2.2.1 14,080 Wednesday, September 24, 2014
Npgsql 2.2.0 (this version) 6,119 Monday, September 1, 2014
Npgsql 2.2.0-rc2 1,606 Sunday, August 17, 2014
Npgsql 2.2.0-rc1 398 Tuesday, August 5, 2014
Npgsql 2.2.0-beta1 264 Wednesday, July 23, 2014
Npgsql 2.1.3 19,796 Wednesday, April 9, 2014
Npgsql 2.1.2 3,529 Friday, March 28, 2014
Npgsql 2.1.1 9,526 Friday, March 21, 2014
Npgsql 2.1.0 2,223 Wednesday, March 19, 2014
Npgsql 2.1.0-rc1 844 Sunday, February 9, 2014
Npgsql 2.1.0-beta1 1,500 Thursday, December 26, 2013
Npgsql 27,314 Saturday, December 21, 2013
Npgsql 2.0.13-beta1 1,664 Sunday, July 14, 2013
Npgsql 33,026 Monday, December 17, 2012
Npgsql 2.0.11 27,942 Sunday, February 6, 2011