budul.CredentialChannelFactory 2.0.0

dotnet add package budul.CredentialChannelFactory --version 2.0.0
                    
NuGet\Install-Package budul.CredentialChannelFactory -Version 2.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="budul.CredentialChannelFactory" Version="2.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="budul.CredentialChannelFactory" Version="2.0.0" />
                    
Directory.Packages.props
<PackageReference Include="budul.CredentialChannelFactory" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add budul.CredentialChannelFactory --version 2.0.0
                    
#r "nuget: budul.CredentialChannelFactory, 2.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package budul.CredentialChannelFactory@2.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=budul.CredentialChannelFactory&version=2.0.0
                    
Install as a Cake Addin
#tool nuget:?package=budul.CredentialChannelFactory&version=2.0.0
                    
Install as a Cake Tool

CredentialChannelFactory

A .NET library for secure credential management and WCF channel creation, supporting both .NET 8 and .NET Standard 2.1.

Features

  • Secure credential handling with WCF services
  • Thread-safe channel factory utilities
  • Async/await support with proper cancellation handling
  • Configurable SSL certificate validation
  • Unit tests included for robust validation
  • Cross-platform support via .NET Standard 2.1

Installation

Via NuGet Package Manager

Install-Package CredentialChannelFactory

Via .NET CLI

dotnet add package CredentialChannelFactory

Via PackageReference

Add this to your .csproj file:

<PackageReference Include="CredentialChannelFactory" Version="1.0.0" />

Quick Start

using CredentialChannelFactory;

// Create factory
using var factory = new Factory<IMyService>(
    url: "https://api.example.com/MyService.svc",
    userName: "your-username",
    password: "your-password");

// Create channel and make service call
var service = factory.Get();
var result = service.GetData("test");

// Clean up
if (service is IClientChannel channel)
    channel.Close();

Getting Started

Prerequisites

  • .NET 8 SDK or compatible runtime
  • Optionally, any environment supporting .NET Standard 2.1

Build from Source

Clone the repository:

git clone https://github.com/yourusername/CredentialChannelFactory.git 
cd CredentialChannelFactory

Restore dependencies:

dotnet restore

Build the solution:

dotnet build

Running Tests

To run the included unit tests:

dotnet test

Usage in Your Project

After installing the NuGet package, import the relevant namespaces:

using CredentialChannelFactory;
using System.ServiceModel;

Then use the provided factories and helpers as needed in your WCF client applications.

Configuration

var config = new WcfConfiguration
{
    SendTimeout = TimeSpan.FromMinutes(5),
    MaxBufferSize = 1024 * 1024,
    IgnoreCertificateErrors = false // Never true in production!
};

var endpoint = new WcfEndpoint("api.example.com", 443, "service.svc");
using var factory = new Factory<IMyService>(endpoint, "user", "pass", config);

Contributing

Contributions are welcome! Please open issues or submit pull requests for improvements and bug fixes.

License

This project is licensed under the MIT License.

Product 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 is compatible.  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.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
2.0.0 44 8/23/2025
1.0.2 386 4/8/2023
1.0.1 543 7/12/2022
1.0.0 793 9/17/2020