From the documentation of IDbConnection.State Property we read that the state goes from Open to Closed in response to either the Close() or Dispose() method being called on the connection. This implies that getting the value of the State property is valid even for a disposed object.
http://msdn.microsoft.com/en-us/library/system.data.idbconnection.state%28v=vs.110%29.aspx
This looks like a bug in npgsql.