ciu-parser
1.0.0
dotnet add package ciu-parser --version 1.0.0
NuGet\Install-Package ciu-parser -Version 1.0.0
<PackageReference Include="ciu-parser" Version="1.0.0" />
paket add ciu-parser --version 1.0.0
#r "nuget: ciu-parser, 1.0.0"
// Install ciu-parser as a Cake Addin #addin nuget:?package=ciu-parser&version=1.0.0 // Install ciu-parser as a Cake Tool #tool nuget:?package=ciu-parser&version=1.0.0
dotnet-credentials-in-url-parser
This package replaces both PostgresConnString.NET and mongo-url-parser as they are very basic packages.
It aims to grant general .NET support for parsing and converting urls in the form "scheme://user:password@host:port/database?connectionparameters" also known as Credential-In-Url and converting it to formats easily used by the database service providers for .NET.
Installation
You can install the package from nuget
Install-Package ciu-parser
or
dotnet add package ciu-parser
or for paket
paket add ciu-parser
Usage
Parsing Urls
To parse a url
using CredentialsInUrlParser;
...
var details = CIU.Parse("postgres://someuser:somepassword@somehost:381/somedatabase");
The resulting details contains a subset of the following properties:
Scheme
- Database server schemeHostName
- Database server hostnamePort
- port on which to connectUserName
- User with which to authenticate to the serverPassword
- Corresponding passwordDatabasePath
- Database name within the serverAdditionalQueryParameters
- Additional database parameters provided as query options
Exports
Currently, this library allows for generating an Npgsql compatible connection strings. With the following parameters
pooling
: type: boolean, default: truetrustServerCertificate
: type: boolean, default: truesslMode
: type: enum, default: Prefer
using CredentialsInUrlParser;
...
var details = CIU.Parse("postgres://someuser:somepassword@somehost:381/somedatabase");
var connString = details.ToNpgsqlSConnectionString(); //User ID=someuser;Password=somepassword;Server=somehost;Port=381;Database=somedatabase;Pooling=true;SSL Mode=Prefer;Trust Server Certificate=true
This library also allows for generating a MongoDB compatible connection string and database name.
using CredentialsInUrlParser;
...
var details = CIU.Parse("mongodb://user:password@host:port/database-name?otheroptions");
var (dbUrl, dbName) = details.ToMongoConnectionSplit();
// dbUrl: mongodb://user:password@host:port?otheroptions
// dbName: database-name
Contributing
Feel free to make requests and to open P=pull requests with fixes and updates.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp1.0 was computed. netcoreapp1.1 was computed. netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard1.3 is compatible. netstandard1.4 was computed. netstandard1.5 was computed. netstandard1.6 was computed. netstandard2.0 was computed. netstandard2.1 was computed. |
.NET Framework | net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen30 was computed. tizen40 was computed. tizen60 was computed. |
Universal Windows Platform | uap was computed. uap10.0 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 1.3
- System.ValueTuple (>= 4.5.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.0 | 509 | 1/20/2024 |