Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Npgsql is the .NET data provider for Postgresql. It allows any program developed for .NET framework to access a Postgresql database server. It is implemented in 100% C# code. Postgresql versions since 9.0 are officially supported, others may work.
C# SQLPL Perl6 Other

Refactor async notifications and message draining

Previously, any code that wanted to communicate with the server has to use
a NotificationBlock for synchronization with the async notification handling

Refactored this so that setting the connector's state to Executing/Fetching/
Copy acquires the lock, and setting it back to ready releases it. This
concentrates the synchronization logic in one place.

Refactored some of the async notification mechanism as well.

Fixes #578
latest commit eeffd0295b
@roji roji authored

Npgsql - .NET Data Provider for PostgreSQL

What Is Npgsql?

Npgsql is a .Net Data Provider for PostgreSQL. It allows you to connect and interact with PostgreSQL server using .NET.

Project Information


Developers who contributes to Npgsql currently or in past, in no particular order:

  • Brar Piening
  • Francisco Figueiredo Jr.
  • Ben Clewett
  • Daniel Morgan
  • Dave Page
  • Ulrich Sprick
  • Glen Parker
  • Josh Cooley
  • Jon Asher
  • Chris Morgan
  • Thilo Utke
  • Hiroshi Saito
  • Shay Rojansky
  • Kenji Uno
  • Emil Lenngren


Refer LICENSE.txt for more information on license terms.

Code history

On December 2nd, we committed a change to restructure Npgsql code. This change modified file locations and unfortunately made the complete modification history of those files to not be available anymore through GitHub interface directly. This stackoverflow post documents a way to access the history before the rename: You just need to access the object tree before the rename and then you can see the rest of the file history. In the case of this rename, this is the tree:

On September 15th, we committed another change to restructure Npgsql code. The tree which contains the code before this change is this:

This will help future searches for the history of the files. Note that you stil can access the complete history of the file through command line: git log --follow ./newflodername/file

Something went wrong with that request. Please try again.