Skip to main content

How Do I Get the PostGRE Connector to Work with Client Certificates?

info

This article describes how to get the PostGRE Connector to work with client certificates.

According to the official documentation a recommended way to use npgsql 4.1 is via NuGet. Their provided MSI installer is somehow weak. The only way we could make it visible to our Designer was installing npgsql 4.0 and then upgrade to 4.1. Then follow these additional steps to get it working.

npgsql 4.1 is available for .NET Framework and .NET Core. And the framework version now depends on some .NET Core assemblies. The MSI package does not provide them. At least they are not visible to our Designer when it is using the npgsql connector.

You need to copy the missing assemblies to the Designer folder C:\Program Files\Windward Studios\Windward (the folder where AutoTag*.dll files reside) manually.

Windward does not and can not include those assemblies with the Designer distribution. As those are solely npgsql dependencies.

Below is a list of files you need to copy. An easy way to get all the files would be to create a simple console application in Visual Studio. Add a dependency to npgsql 4.1 to the application via NuGet. And build the application. It's output folder will contain all files needed.

The file list.

info

Some files are not strictly required. For example Npgsql.dll which is provided by the MSI installer. But it's up to the npgsql maintainers.

Microsoft.Bcl.AsyncInterfaces.dll

Microsoft.Win32.Primitives.dll

netstandard.dll

Npgsql.dll

System.AppContext.dll

System.Buffers.dll

System.Collections.Concurrent.dll

System.Collections.dll

System.Collections.NonGeneric.dll

System.Collections.Specialized.dll

System.ComponentModel.dll

System.ComponentModel.EventBasedAsync.dll

System.ComponentModel.Primitives.dll

System.ComponentModel.TypeConverter.dll

System.Console.dll

System.Data.Common.dll

System.Diagnostics.Contracts.dll

System.Diagnostics.Debug.dll

System.Diagnostics.FileVersionInfo.dll

System.Diagnostics.Process.dll

System.Diagnostics.StackTrace.dll

System.Diagnostics.TextWriterTraceListener.dll

System.Diagnostics.Tools.dll

System.Diagnostics.TraceSource.dll

System.Diagnostics.Tracing.dll

System.Drawing.Primitives.dll

System.Dynamic.Runtime.dll

System.Globalization.Calendars.dll

System.Globalization.dll

System.Globalization.Extensions.dll

System.IO.Compression.dll

System.IO.Compression.ZipFile.dll

System.IO.dll

System.IO.FileSystem.dll

System.IO.FileSystem.DriveInfo.dll

System.IO.FileSystem.Primitives.dll

System.IO.FileSystem.Watcher.dll

System.IO.IsolatedStorage.dll

System.IO.MemoryMappedFiles.dll

System.IO.Pipes.dll

System.IO.UnmanagedMemoryStream.dll

System.Linq.dll

System.Linq.Expressions.dll

System.Linq.Parallel.dll

System.Linq.Queryable.dll

System.Memory.dll

System.Net.Http.dll

System.Net.NameResolution.dll

System.Net.NetworkInformation.dll

System.Net.Ping.dll

System.Net.Primitives.dll

System.Net.Requests.dll

System.Net.Security.dll

System.Net.Sockets.dll

System.Net.WebHeaderCollection.dll

System.Net.WebSockets.Client.dll

System.Net.WebSockets.dll

System.Numerics.Vectors.dll

System.ObjectModel.dll

System.Reflection.dll

System.Reflection.Extensions.dll

System.Reflection.Primitives.dll

System.Resources.Reader.dll

System.Resources.ResourceManager.dll

System.Resources.Writer.dll

System.Runtime.CompilerServices.Unsafe.dll

System.Runtime.CompilerServices.VisualC.dll

System.Runtime.dll

System.Runtime.Extensions.dll

System.Runtime.Handles.dll

System.Runtime.InteropServices.dll

System.Runtime.InteropServices.RuntimeInformation.dll

System.Runtime.Numerics.dll

System.Runtime.Serialization.Formatters.dll

System.Runtime.Serialization.Json.dll

System.Runtime.Serialization.Primitives.dll

System.Runtime.Serialization.Xml.dll

System.Security.Claims.dll

System.Security.Cryptography.Algorithms.dll

System.Security.Cryptography.Csp.dll

System.Security.Cryptography.Encoding.dll

System.Security.Cryptography.Primitives.dll

System.Security.Cryptography.X509Certificates.dll

System.Security.Principal.dll

System.Security.SecureString.dll

System.Text.Encoding.dll

System.Text.Encoding.Extensions.dll

System.Text.Encodings.Web.dll

System.Text.Json.dll

System.Text.RegularExpressions.dll

System.Threading.dll

System.Threading.Overlapped.dll

System.Threading.Tasks.dll

System.Threading.Tasks.Extensions.dll

System.Threading.Tasks.Parallel.dll

System.Threading.Thread.dll

System.Threading.ThreadPool.dll

System.Threading.Timer.dll

System.ValueTuple.dll

System.Xml.ReaderWriter.dll

System.Xml.XDocument.dll

System.Xml.XmlDocument.dll

System.Xml.XmlSerializer.dll

System.Xml.XPath.dll

System.Xml.XPath.XDocument.dll