C# Driver and Windows GUI

I am so excited when CockroachDB is getting closer and closer to production ready. We have a very small test cluster setup on a few Linux hosts, however; our application is in C# .Net and developers are using Windows Machine.

It seems the popular Postgre C# driver and GUI like Npgsql and pgAdmin are still not compatible with CocakroachDB (https://github.com/cockroachdb/cockroach/issues/9955). Are there any plan on support some C# driver and Windows GUI before V1?

Or if I am missing something that there is some drivers and GUIs out there already supported?

Thanks. Happy Friday!

1 Like

Hi @leokwan,

Since that issue was raised, we’ve added a good deal of additional support for ORMs across the board. I’ve responded to the issue to ask Npgsql’s maintainer to see if our work was sufficient to enable compatibility.

If you’d like to help us out, you could go ahead and try using Npgsql against CockroachDB and report back with any issues that you find.

We haven’t yet begun to look at supporting pgAdmin, but it’s very unlikely that we’ll be able to fully support it by the end of this quarter. However, now that we know there is some demand for support for it, we can begin to prioritize that work more effectively.

Thanks for writing in!


I’ve been searching for a replacement for our current SQL Server database implementation for our startup and just came across CockroachDB. I’m really excited about the Npgsql support since we use C#!!

While we don’t officially support npgsql yet, I gave it a try the other day and didn’t have any issues. Please, give it a try and file any issues!

@leokwan and @pwhe23, we just published a tutorial on using the .NET Pggsql driver with CockroachDB. Please take a look and let us know if you run into any issues.

Note that the current code samples are for an insecure cluster. We plan on adding secure cluster examples at some point as well.

@jesse Fantastic! Thank you for the update.

For my use case, I am running a secure cluster with username/password for client authentication. So in my connection string, I’ve aded “SSL Mode=Require;Trust Server Certificate=True;Use SSL Stream=True”. I believe it worth to mention this in the tutorial.

@leokwan, can you add those details to this PR? @Bram will work on code samples/guidance for secure clusters, and your insights will help.