### Install IbanNet using Package Manager Console Source: https://github.com/skwasjer/ibannet/wiki/Installation Use this command in the Package Manager Console to install the IbanNet NuGet package. ```powershell Install-Package IbanNet ``` -------------------------------- ### Install IbanNet using .NET CLI Source: https://github.com/skwasjer/ibannet/wiki/Installation Use this command with the .NET CLI to add the IbanNet package to your project. ```bash dotnet add package IbanNet ``` -------------------------------- ### Register IbanNet services with defaults (Autofac) Source: https://github.com/skwasjer/ibannet/wiki/Dependency-injection Register IbanNet services using Autofac with default settings. The IbanNet.DependencyInjection.Autofac package must be installed. ```csharp container.RegisterIbanNet(); ``` -------------------------------- ### Add IbanNet services with defaults (Microsoft.Extensions.DependencyInjection) Source: https://github.com/skwasjer/ibannet/wiki/Dependency-injection Use this to register IbanNet services with default configurations in your application. Ensure the IbanNet.DependencyInjection.ServiceProvider package is installed. ```csharp services.AddIbanNet(); ``` -------------------------------- ### Configuring IbanNet Options Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.Autofac.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Extension methods for configuring IbanNet options within the Autofac dependency injection setup. ```APIDOC ## Configure(this IIbanNetOptionsBuilder builder, Action configure) ### Description Configures the IbanValidatorOptions using a provided action that has access to the Autofac component context. ### Method Signature `public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure)` ### Parameters * **builder** (IIbanNetOptionsBuilder) - The options builder to configure. * **configure** (Action) - An action that takes the component context and options to configure. ``` ```APIDOC ## WithRule(this IIbanNetOptionsBuilder builder, Func implementationFactory) ### Description Adds a custom IBanValidationRule to the IbanNet configuration using a factory function that resolves the implementation from the Autofac component context. ### Method Signature `public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder WithRule(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Func implementationFactory) where T : class, IIbanValidationRule` ### Parameters * **builder** (IIbanNetOptionsBuilder) - The options builder to add the rule to. * **implementationFactory** (Func) - A factory function that creates the validation rule implementation. ``` -------------------------------- ### Configuring IbanNet Options Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.Autofac.Tests/PublicApi/.NET_10.0.verified.txt Provides extension methods for configuring IbanNet options within the Autofac dependency injection setup. ```APIDOC ## Configure(this IIbanNetOptionsBuilder builder, Action configure) ### Description Configures the IbanNet validator options using a provided configuration action that has access to the Autofac component context. ### Method Signature `public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure)` ### Parameters - **builder** (`IIbanNetOptionsBuilder`) - The options builder to configure. - **configure** (`Action`) - An action that takes the component context and validator options to configure them. ``` ```APIDOC ## WithRule(this IIbanNetOptionsBuilder builder, Func implementationFactory) ### Description Adds a custom IBAN validation rule to the IbanNet configuration, using a factory function that provides the implementation. ### Method Signature `public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder WithRule(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Func implementationFactory) where T : class, IIbanValidationRule` ### Parameters - **builder** (`IIbanNetOptionsBuilder`) - The options builder to configure. - **implementationFactory** (`Func`) - A factory function that creates an instance of the validation rule, with access to the component context. ``` -------------------------------- ### Register IbanNet services with custom configuration (Autofac) Source: https://github.com/skwasjer/ibannet/wiki/Dependency-injection Customize IbanNet registration in Autofac by providing custom options for registry providers and validation rules. Ensure the IbanNet.DependencyInjection.Autofac package is installed. ```csharp container .RegisterIbanNet(opts => opts .UseRegistryProvider(new MyCustomRegistryProvider()) .WithRule() ); ``` -------------------------------- ### BuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Extension methods for IbanNet builders, providing convenient ways to get builders and set country information. ```csharp public static class BuilderExtensions { public static IbanNet.Builders.BbanBuilder GetBbanBuilder(this IbanNet.Registry.IbanCountry country) { } public static IbanNet.Builders.IbanBuilder GetIbanBuilder(this IbanNet.Registry.IbanCountry country) { } public static IbanNet.Builders.IBankAccountBuilder WithCountry(this IbanNet.Builders.IBankAccountBuilder builder, string countryCode, IbanNet.Registry.IIbanRegistry registry) { } } ``` -------------------------------- ### Run IbanNet Benchmarks Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Benchmark/BenchmarkResults.md Navigate to the benchmark directory and execute the benchmark suite using the dotnet CLI. Specify the target .NET runtimes for comparison. ```bash cd ./test/IbanNet.Benchmark dotnet run -c Release -f net10.0 --runtimes net10.0 net80 net48 ``` -------------------------------- ### Add IbanNet Services with Configuration Source: https://github.com/skwasjer/ibannet/blob/main/src/IbanNet.DependencyInjection.ServiceProvider/README.md Registers IbanNet services with custom configuration options. Use this to specify a custom registry provider or add custom validation rules. ```csharp services .AddIbanNet(opts => opts .UseRegistryProvider(new SwiftRegistryProvider()) .WithRule() ); ``` -------------------------------- ### IIbanNetOptionsBuilder Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Interface for configuring IbanNet options. ```APIDOC ## IIbanNetOptionsBuilder ### Description An interface that provides a fluent API for configuring IbanNet options, including registries, rules, and custom configurations. ### Methods - **Configure(Action configure)**: Configures the IbanNet options using a delegate that receives the dependency resolver and options. - **UseRegistry(IEnumerable registry)**: Sets the IBAN registry to use. - **UseRegistryProvider(params IIbanRegistryProvider[] registryProviders)**: Sets the IBAN registry providers to use. - **WithRule(Type implementationType)**: Adds a custom validation rule by its implementation type. - **WithRule()**: Adds a custom validation rule of a generic type T. ``` -------------------------------- ### IIbanNetOptionsBuilder Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_8.0.verified.txt Interface for configuring IbanNet options. ```APIDOC ## IIbanNetOptionsBuilder ### Description Provides a fluent interface for configuring the options of the IbanNet validator. ### Methods - `Configure(Action configure)`: Configures the validator options using a resolver adapter and an options action. - `Configure(Action configure)`: Configures the validator options using an options action. - `UseRegistry(IEnumerable registry)`: Sets the IBAN registry to use. - `UseRegistryProvider(params IIbanRegistryProvider[] registryProviders)`: Specifies registry providers to load IBAN information. - `WithRule(Type implementationType)`: Adds a custom validation rule by its implementation type. ``` -------------------------------- ### Parse IBAN and use Iban Type Source: https://github.com/skwasjer/ibannet/blob/main/README.md Use `IIbanParser` to parse an IBAN string into the `Iban` type. The `IbanRegistry.Default` should be used for parsing. The `Iban` type can be formatted, for example, obfuscated. ```csharp Iban iban; IIbanParser parser = new IbanParser(IbanRegistry.Default); bool success = parser.TryParse("NL91 ABNA 0417 1643 00", out iban); if (success) { Console.WriteLine(iban.ToString(IbanFormat.Obfuscated)); // XXXXXXXXXXXXXX4300 } ``` -------------------------------- ### IIbanNetOptionsBuilder Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Framework_4.6.2.verified.txt Interface for configuring IbanNet options. ```APIDOC ## IIbanNetOptionsBuilder ### Description Defines the contract for building and configuring IbanNet options, supporting fluent chaining. ### Methods - `IIbanNetOptionsBuilder Configure(Action configure)`: Configures the options using a resolver adapter and validator options. - `IIbanNetOptionsBuilder Configure(Action configure)`: Configures the options using validator options. - `IIbanNetOptionsBuilder UseRegistry(IEnumerable registry)`: Sets the IBAN registry to use. - `IIbanNetOptionsBuilder UseRegistryProvider(params IIbanRegistryProvider[] registryProviders)`: Sets the IBAN registry providers to use. - `IIbanNetOptionsBuilder WithRule(Type implementationType)`: Adds a custom validation rule by its type. - `IIbanNetOptionsBuilder WithRule() where T : class`: Adds a custom validation rule by its generic type. ``` -------------------------------- ### Serialize/Deserialize Iban with Newtonsoft.Json Source: https://github.com/skwasjer/ibannet/wiki/JSON-support This snippet demonstrates serializing and deserializing an Iban type within a record using Newtonsoft.Json. It leverages the provided type converter for seamless integration without additional setup. ```csharp public record Payment(Iban BankAccountNumber, decimal Amount) { } IIbanParser parser = ..; // Dependency injection Payment payment1 = new Payment(parser.Parse("NL91 ABNA 0417 1643 00"), 100M); string json = JsonConvert.SerializeObject(payment1); // Produces: {"BankAccountNumber":"NL91ABNA0417164300","Amount":100} Payment payment2 = JsonConvert.DeserializeObject(json); bool isSame = payment2.Equals(payment1); // true ``` -------------------------------- ### IIbanNetOptionsBuilder Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Interface for configuring IbanNet options. ```APIDOC ## IIbanNetOptionsBuilder ### Description Provides a fluent interface for configuring the options used by IbanNet, such as registries and validation rules. ### Methods - `IIbanNetOptionsBuilder Configure(Action configure)`: Configures the options using a delegate that receives the dependency resolver and options object. - `IIbanNetOptionsBuilder UseRegistry(IEnumerable registry)`: Sets the IBAN registry to use. - `IIbanNetOptionsBuilder UseRegistryProvider(params IIbanRegistryProvider[] registryProviders)`: Sets the registry providers to use. - `IIbanNetOptionsBuilder WithRule(Type implementationType)`: Adds a validation rule by its implementation type. - `IIbanNetOptionsBuilder WithRule() where T : class`: Adds a validation rule by its generic type `T`. ``` -------------------------------- ### Convert IBAN to String with Different Formats Source: https://github.com/skwasjer/ibannet/wiki/Formatting-an-IBAN Demonstrates converting an IBAN string to an Iban object and then formatting it into Obfuscated and Hidden string representations using the ToString method. ```csharp IIbanParser parser = new IbanParser(new IbanValidator()); Iban iban = parser.Parse("NL91 ABNA 0417 1643 00"); Debug.WriteLine(iban.ToString(IbanFormat.Obfuscated)); // XXXXXXXXXXXXXXXX4300 Debug.WriteLine(iban.ToString(IbanFormat.Hidden)); // **** ``` -------------------------------- ### Generate IBAN Regex Pattern Source: https://github.com/skwasjer/ibannet/wiki/Extensions Use the ToRegexPattern() extension to get a regex string for a specific country's IBAN format. This is useful for client-side validation to ensure consistency with backend validation. ```csharp foreach (var country in IbanRegistry.Default) { string regex = country.Iban.Pattern.ToRegexPattern(); Console.WriteLine($"{country.TwoLetterISORegionName}: {regex}"); } ``` -------------------------------- ### IBAN Validation by Property Source: https://github.com/skwasjer/ibannet/wiki/IbanNet.DataAnnotations Use the [Iban] attribute on a model property for IBAN validation. Combine with [Required] to ensure the property is not null. This example shows usage in MVC and Web API controllers. ```csharp public class InputModel { [Iban(Strict = true)] [Required] public string BackAccountNumber { get; set; } } // MVC public class MyMvcController : Controller { [HttpPost] public ActionResult Save(InputModel model) { if (ModelState.IsValid) { // .. } } } // Web API public class MyWebApiController : ApiController { [HttpPost] public IHttpActionResult Save(InputModel model) { if (ModelState.IsValid) { // .. } } } ``` -------------------------------- ### Add IbanNet services with custom configuration (Microsoft.Extensions.DependencyInjection) Source: https://github.com/skwasjer/ibannet/wiki/Dependency-injection Configure IbanNet services with custom options, such as specifying a custom registry provider or adding custom validation rules. Requires the IbanNet.DependencyInjection.ServiceProvider package. ```csharp services .AddIbanNet(opts => opts .UseRegistryProvider(new MyCustomRegistryProvider()) .WithRule() ); ``` -------------------------------- ### Format IBAN using string.Format Source: https://github.com/skwasjer/ibannet/wiki/Formatting-an-IBAN Shows how to format an IBAN object into a printable string representation using the 'P' format specifier with string.Format. ```csharp Debug.WriteLine(string.Format("{0:P}", iban)); // NL91 ABNA 0417 1643 00 ``` -------------------------------- ### Configure IbanNet Options Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.ServiceProvider.Tests/PublicApi/.NET_10.0.verified.txt Configures the IbanNet options using a service provider. ```APIDOC ## Configure IbanNet Options ### Description Configures the IbanNet options using a service provider. ### Method `Configure(this IIbanNetOptionsBuilder builder, Action configure)` ``` -------------------------------- ### IIbanNetOptionsBuilder Extensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Framework_4.7.2.verified.txt Extension methods for configuring IbanNet options. ```APIDOC ## IIbanNetOptionsBuilder Extensions ### Description Extension methods to configure IbanNet options, specifically for adding validation rules. ### Methods - **WithRule(this IIbanNetOptionsBuilder builder)**: Adds a validation rule of the specified type `T` to the options. - **WithRule(this IIbanNetOptionsBuilder builder, Func implementationFactory)**: Adds a validation rule of the specified type `T` to the options using a factory function to create the implementation. ``` -------------------------------- ### IbanNetOptionsBuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.ServiceProvider.Tests/PublicApi/.NET_8.0.verified.txt Extension methods for configuring IbanNet options. ```APIDOC ## Configure ### Description Configures IbanNet options using a delegate that receives the IServiceProvider and IbanValidatorOptions. ### Method `IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure)` ### Parameters - **builder** (`IbanNet.DependencyInjection.IIbanNetOptionsBuilder`) - The options builder to configure. - **configure** (`System.Action`) - An action to configure the IbanValidatorOptions. ## WithRule ### Description Adds a custom IBAN validation rule to the validator, using a factory function that receives the IServiceProvider. ### Method `IbanNet.DependencyInjection.IIbanNetOptionsBuilder WithRule(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Func implementationFactory) where T : class, IbanNet.Validation.Rules.IIbanValidationRule` ### Parameters - **builder** (`IbanNet.DependencyInjection.IIbanNetOptionsBuilder`) - The options builder to add the rule to. - **implementationFactory** (`System.Func`) - A factory function that creates an instance of the validation rule. ``` -------------------------------- ### IbanNetOptionsBuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Extension methods for configuring IbanNet options. ```APIDOC ## IbanNetOptionsBuilderExtensions ### Description Provides static extension methods to simplify the configuration of IbanNet options through the `IIbanNetOptionsBuilder` interface. ### Methods - **Configure(this IIbanNetOptionsBuilder builder, Action configure)**: Configures the IbanNet options using a delegate that receives only the options. - **UseRegistry(this IIbanNetOptionsBuilder builder, IEnumerable registry)**: Sets the IBAN registry to use. - **UseRegistryProvider(this IIbanNetOptionsBuilder builder, params IIbanRegistryProvider[] registryProviders)**: Sets the IBAN registry providers to use. - **WithRule(this IIbanNetOptionsBuilder builder, Type implementationType)**: Adds a custom validation rule by its implementation type. - **WithRule(this IIbanNetOptionsBuilder builder)**: Adds a custom validation rule of a generic type T. ``` -------------------------------- ### IbanNetOptionsBuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_8.0.verified.txt Extension methods for configuring IbanNet options. ```APIDOC ## IbanNetOptionsBuilderExtensions ### Description Provides extension methods to simplify the configuration of `IIbanNetOptionsBuilder`. ### Methods - `Configure(this IIbanNetOptionsBuilder builder, Action configure)`: Configures the validator options. - `UseRegistry(this IIbanNetOptionsBuilder builder, IEnumerable registry)`: Configures the builder to use a specific IBAN registry. - `UseRegistryProvider(this IIbanNetOptionsBuilder builder, params IIbanRegistryProvider[] registryProviders)`: Configures the builder to use specified registry providers. - `WithRule(this IIbanNetOptionsBuilder builder, Type implementationType)`: Adds a custom validation rule to the builder. ``` -------------------------------- ### IbanNetOptionsBuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Extension methods for configuring IbanNet options. ```APIDOC ## IbanNetOptionsBuilderExtensions ### Description Provides extension methods to simplify the configuration of `IIbanNetOptionsBuilder`. ### Methods - `IIbanNetOptionsBuilder Configure(this IIbanNetOptionsBuilder builder, Action configure)`: Configures the options using a delegate that receives the options object. - `IIbanNetOptionsBuilder UseRegistry(this IIbanNetOptionsBuilder builder, IEnumerable registry)`: Sets the IBAN registry to use. - `IIbanNetOptionsBuilder UseRegistryProvider(this IIbanNetOptionsBuilder builder, params IIbanRegistryProvider[] registryProviders)`: Sets the registry providers to use. - `IIbanNetOptionsBuilder WithRule(this IIbanNetOptionsBuilder builder, Type implementationType)`: Adds a validation rule by its implementation type. - `IIbanNetOptionsBuilder WithRule(this IIbanNetOptionsBuilder builder)`: Adds a validation rule by its generic type `T`. ``` -------------------------------- ### Configure Custom Registry Providers Source: https://github.com/skwasjer/ibannet/wiki/Options Configure IbanNet to use multiple registry providers, prioritizing the SWIFT registry and falling back to Wikipedia if necessary. Ensure the preferred provider is listed first. ```csharp var validator = new IbanValidator(new IbanValidatorOptions { Registry = new IbanRegistry { Providers = { new SwiftRegistryProvider(), // Preferred new WikipediaRegistryProvider() // If country not available in SWIFT, use Wikipedia. } } }); ``` -------------------------------- ### IbanNetOptionsBuilderExtensions Methods Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_10.0.verified.txt Extension methods for configuring IbanNet options, such as setting the registry, adding rules, and configuring validation options. ```APIDOC ## IbanNetOptionsBuilderExtensions ### Description Extension methods for the `IIbanNetOptionsBuilder` interface. ### Methods - **Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure)**: Configures the IbanNet validator options using a delegate. - **UseRegistry(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Collections.Generic.IEnumerable registry)**: Sets the IBAN registry to use. - **UseRegistryProvider(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, params IbanNet.Registry.IIbanRegistryProvider[] registryProviders)**: Sets the IBAN registry providers to use. - **WithRule(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Type implementationType)**: Adds a validation rule by its implementation type. ``` -------------------------------- ### Configure IbanNet Options Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.ServiceProvider.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Configures the IbanNet options using a delegate that receives the IServiceProvider and IbanValidatorOptions. ```APIDOC ## Configure ### Description Configures the IbanNet options using a delegate that receives the IServiceProvider and IbanValidatorOptions. ### Method `public static IIbanNetOptionsBuilder Configure(this IIbanNetOptionsBuilder builder, Action configure)` ``` -------------------------------- ### IIbanNetOptionsBuilder Interface Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Interface for configuring IbanNet options, supporting fluent configuration. ```csharp public interface IIbanNetOptionsBuilder : IbanNet.IFluentInterface { IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(System.Action configure); } ``` -------------------------------- ### Compare Iban Instances for Equality in C# Source: https://github.com/skwasjer/ibannet/wiki/Equality Demonstrates comparing Iban objects for equality using the overloaded equality operators and the Equals method. Note that whitespace is ignored during comparison. ```csharp IIbanParser parser = new IbanParser(new IbanValidator()); Iban iban1 = parser.Parse("NL91ABNA0417164300"); Iban iban2 = parser.Parse(" NL91 ABNA 0417 1643 00 "); Iban iban3 = parser.Parse("BE68 5390 0754 7034"); Debug.WriteLine(iban1 == iban2); // True Debug.WriteLine(iban1.Equals(iban2)); // True Debug.WriteLine(iban1 == iban3); // False Debug.WriteLine(iban1 != iban3); // True ``` -------------------------------- ### IbanNetOptionsBuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.ServiceProvider.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Extension methods for configuring IbanNet options within a ServiceProvider context. ```APIDOC ## Configure ### Description Configures the IbanValidatorOptions using a provided action that has access to the ServiceProvider. ### Method `IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure)` ### Parameters - **builder** (`IbanNet.DependencyInjection.IIbanNetOptionsBuilder`) - The options builder to configure. - **configure** (`System.Action`) - An action to configure the options, receiving the ServiceProvider and IbanValidatorOptions. ## WithRule ### Description Adds a custom IBAN validation rule to the validator, using a factory function that can resolve dependencies from the ServiceProvider. ### Method `IbanNet.DependencyInjection.IIbanNetOptionsBuilder WithRule(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Func implementationFactory) where T : class, IbanNet.Validation.Rules.IIbanValidationRule` ### Parameters - **builder** (`IbanNet.DependencyInjection.IIbanNetOptionsBuilder`) - The options builder to add the rule to. - **implementationFactory** (`System.Func`) - A function that creates an instance of the validation rule, with access to the ServiceProvider. ### Type Parameters - **T** - The type of the IBAN validation rule, which must be a class implementing `IIbanValidationRule`. ``` -------------------------------- ### QrIbanRule Constructor Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Initializes a new instance of the QrIbanRule class, used for validating IBANs formatted for QR codes. ```APIDOC ## QrIbanRule() ### Description Initializes a new instance of the `QrIbanRule` class. ``` -------------------------------- ### Extract IBAN Components using Properties Source: https://github.com/skwasjer/ibannet/wiki/Properties Demonstrates how to use properties of the Iban object to extract its country code, BBAN, bank identifier, and branch identifier. BankIdentifier and BranchIdentifier might be null if not supported for a given country. ```csharp IbanParser parser = new IbanParser(new IbanValidator()); Iban iban = parser.Parse("GB29NWBK60161331926819"); Console.WriteLine(iban.Country.TwoLetterISORegionName); // GB Console.WriteLine(iban.Bban); // NWBK60161331926819 Console.WriteLine(iban.BankIdentifier); // NWBK Console.WriteLine(iban.BranchIdentifier); // 601613 ``` -------------------------------- ### Configure IbanNet Options Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.Autofac.Tests/PublicApi/.NET_8.0.verified.txt Configures IbanNet options using a delegate that provides access to the component context and validator options. ```APIDOC ## Configure IbanNet Options ### Description Configures IbanNet options. ### Method Signature `public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure)` ### Parameters * **builder** (IbanNet.DependencyInjection.IIbanNetOptionsBuilder) - The options builder. * **configure** (System.Action) - An action to configure the IbanValidatorOptions. ``` -------------------------------- ### IbanNetOptionsBuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Extension methods for configuring IbanNet options, including registry usage and rule definitions. ```csharp public static class IbanNetOptionsBuilderExtensions { public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure) { } public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder UseRegistry(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Collections.Generic.IEnumerable registry) { } public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder UseRegistryProvider(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, params IbanNet.Registry.IIbanRegistryProvider[] registryProviders) { } public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder WithRule(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Type implementationType) { } public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder WithRule(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder) ``` -------------------------------- ### Configuring IbanNet Options Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.Autofac.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Extension methods for configuring IbanNet options when registering services with Autofac. This includes custom configuration actions and adding validation rules. ```APIDOC ## IbanNetOptionsBuilder Extensions ### Description Provides extension methods for the `IIbanNetOptionsBuilder` to customize IbanNet's behavior within the Autofac container. ### Method Signatures ```csharp public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure) public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder WithRule(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Func implementationFactory) where T : class, IbanNet.Validation.Rules.IIbanValidationRule ``` ### Parameters - `builder` (IbanNet.DependencyInjection.IIbanNetOptionsBuilder) - The options builder to configure. - `configure` (System.Action) - An action that receives the `IComponentContext` and `IbanValidatorOptions` to configure validation options. - `implementationFactory` (System.Func) - A factory function that creates an instance of an `IIbanValidationRule`. ``` -------------------------------- ### IIbanNetOptionsBuilder Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Framework_4.7.2.verified.txt Interface for configuring IbanNet options, including registry providers, custom rules, and validation options. ```APIDOC ## IIbanNetOptionsBuilder ### Description Interface for configuring IbanNet options. ### Methods - **Configure(System.Action configure)**: Configures the IBAN validator options using a dependency resolver. - **Configure(System.Action configure)**: Configures the IBAN validator options. - **UseRegistry(System.Collections.Generic.IEnumerable registry)**: Sets the IBAN registry to use. - **UseRegistryProvider(params IbanNet.Registry.IIbanRegistryProvider[] registryProviders)**: Sets the IBAN registry providers to use. - **WithRule(System.Type implementationType)**: Adds a custom validation rule by its type. - **WithRule()**: Adds a custom validation rule of a generic type T. ``` -------------------------------- ### QrIbanRule Constructor Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Framework_4.7.2.verified.txt Initializes a new instance of the QrIbanRule class, used for validating IBANs intended for QR codes. ```APIDOC ## QrIbanRule() ### Description Initializes a new instance of the `QrIbanRule` class. ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - None ### Constructor Signature `public QrIbanRule()` ``` -------------------------------- ### Configure IbanNet Options Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.ServiceProvider.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Allows configuration of IbanNet options using a service provider. This is useful for advanced scenarios where options depend on other registered services. ```csharp public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure) { } ``` -------------------------------- ### Generate IBAN with Custom IIbanRegistry Source: https://github.com/skwasjer/ibannet/wiki/Test-helpers Create an IbanGenerator instance with a custom IIbanRegistry to control the providers used for IBAN generation. This allows for specific configurations or the inclusion of custom IBAN rules. ```csharp public class TestClass { [Fact] public void MyTest() { var generator = new IbanGenerator(new IbanRegistry { /* custom providers */ }); Iban iban = generator.Generate("NL"); } } ``` -------------------------------- ### Register IbanNet Services with Custom Configuration Source: https://github.com/skwasjer/ibannet/blob/main/src/IbanNet.DependencyInjection.Autofac/README.md Register IbanNet services with custom options, such as specifying a different registry provider or adding custom rules. This allows for more advanced configurations. ```csharp container .RegisterIbanNet(opts => opts .UseRegistryProvider(new SwiftRegistryProvider()) .WithRule() ); ``` -------------------------------- ### Register IbanNet with Autofac and Custom Configuration Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.Autofac.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Register IbanNet services with Autofac, providing a configuration action to customize options. Optionally preserve the static validator instance. ```csharp public static Autofac.ContainerBuilder RegisterIbanNet(this Autofac.ContainerBuilder containerBuilder, System.Action configure, bool preserveStaticValidator = false) { } ``` -------------------------------- ### Generate IBAN with Default Registry Source: https://github.com/skwasjer/ibannet/wiki/Test-helpers Instantiate IbanGenerator with its default registry to generate an IBAN for a specified country code. This is useful for quick generation without custom configurations. ```csharp public class TestClass { [Fact] public void MyTest() { var generator = new IbanGenerator(); Iban iban = generator.Generate("NL"); // Act // use the generated IBAN... } } ``` -------------------------------- ### Generate IBAN via Dependency Injection Source: https://github.com/skwasjer/ibannet/wiki/Test-helpers Obtain an IIbanGenerator instance through dependency injection when using the provided DI integration packages. This is the recommended approach for integrating IBAN generation into larger applications. ```csharp public class MyClass { public MyClass(IIbanGenerator generator) { _generator = generator; } public void Hello() { Iban iban = _generator.Generate("NL") } } ``` -------------------------------- ### Format IBAN using String Interpolation Source: https://github.com/skwasjer/ibannet/wiki/Formatting-an-IBAN Illustrates formatting an IBAN object into an electronic string representation using the 'E' format specifier with string interpolation. ```csharp Debug.WriteLine($"{iban:E}"); // NL91ABNA0417164300 ``` -------------------------------- ### Configure IbanNet Options with Autofac Context Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.Autofac.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Configure IbanNet options using a callback that has access to the Autofac component context and IbanValidatorOptions. ```csharp public static IbanNet.DependencyInjection.IIbanNetOptionsBuilder Configure(this IbanNet.DependencyInjection.IIbanNetOptionsBuilder builder, System.Action configure) { } ``` -------------------------------- ### IIbanNetOptionsBuilder Interface Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_10.0.verified.txt Interface for configuring IbanNet options, including registry and validation rules. ```APIDOC ## IIbanNetOptionsBuilder ### Description Interface for configuring IbanNet options. ### Methods - **Configure(System.Action configure)**: Configures the IbanNet options using a delegate that receives the dependency resolver and options object. ``` -------------------------------- ### AcceptCountryRule Constructor Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Initializes a new instance of the AcceptCountryRule class, which validates that the IBAN belongs to one of the specified accepted countries. ```APIDOC ## AcceptCountryRule(IEnumerable acceptedCountryCodes) ### Description Initializes a new instance of the `AcceptCountryRule` class. ### Parameters #### Path Parameters - **acceptedCountryCodes** (System.Collections.Generic.IEnumerable) - Required - A collection of country codes that are accepted. ``` -------------------------------- ### IbanRegistry Methods Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_10.0.verified.txt Details the methods and properties for managing and querying the IBAN registry. ```APIDOC ## IbanRegistry ### Description Manages the registry of IBAN countries and their associated validation rules. ### Properties - **Count** (int) - The number of countries in the registry. - **Providers** (IList) - A list of providers contributing to the registry. - **Default** (IbanRegistry) - The default, globally available IBAN registry instance. ### Indexers - **this[string twoLetterISORegionName]** (IbanCountry) - Retrieves an IbanCountry by its two-letter ISO region name. ### Methods - **TryGetValue(string twoLetterISORegionName, out IbanCountry? country)**: Attempts to retrieve an IbanCountry by its two-letter ISO region name. - **Parameters**: - **twoLetterISORegionName** (string) - The two-letter ISO country code to look up. - **country** (out IbanCountry?) - When this method returns, contains the IbanCountry if found, or null otherwise. - **Returns**: - bool - True if an IbanCountry was found, false otherwise. ``` -------------------------------- ### IbanBuilder Methods Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_10.0.verified.txt Provides methods to construct an IBAN by setting various components like bank account number, bank identifier, branch identifier, and country. ```APIDOC ## IbanBuilder ### Description Represents a builder for constructing an IBAN. ### Methods - **IbanBuilder()**: Initializes a new instance of the `IbanBuilder` class. - **Build()**: Builds the IBAN string. - **WithBankAccountNumber(string bankAccountNumber, bool enablePadding = true)**: Sets the bank account number. Padding can be enabled or disabled. - **WithBankIdentifier(string bankIdentifier, bool enablePadding = true)**: Sets the bank identifier. Padding can be enabled or disabled. - **WithBranchIdentifier(string branchIdentifier, bool enablePadding = true)**: Sets the branch identifier. Padding can be enabled or disabled. - **WithCountry(IbanNet.Registry.IbanCountry country)**: Sets the country for the IBAN. ``` -------------------------------- ### IbanValidatorOptions Class Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_10.0.verified.txt Options for configuring the IbanValidator. ```APIDOC ## IbanValidatorOptions Class ### Description Configuration options for the `IbanValidator`. ### Constructors - **IbanValidatorOptions()**: Initializes a new instance with default options. ### Properties - **Registry**: `IIbanRegistry` - The IBAN registry to use for country-specific rules. - **Rules**: `ICollection` - A collection of custom validation rules. ``` -------------------------------- ### Builder Extensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_10.0.verified.txt Extension methods for creating builders and configuring IBAN related objects. ```APIDOC ## Builder Extensions ### Description Provides extension methods for working with IBAN builders and configurations. ### Methods - **GetBbanBuilder(this IbanNet.Registry.IbanCountry country)**: Gets a `BbanBuilder` for the specified country. - **GetIbanBuilder(this IbanNet.Registry.IbanCountry country)**: Gets an `IbanBuilder` for the specified country. - **WithCountry(this IbanNet.Builders.IBankAccountBuilder builder, string countryCode, IbanNet.Registry.IIbanRegistry registry)**: Sets the country on an `IBankAccountBuilder` using a country code and registry. ``` -------------------------------- ### BbanBuilder Methods Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_10.0.verified.txt Provides methods to construct a BBAN (Basic Bank Account Number) by setting various components like bank account number, bank identifier, branch identifier, and country. ```APIDOC ## BbanBuilder ### Description Represents a builder for constructing a BBAN. ### Methods - **BbanBuilder()**: Initializes a new instance of the `BbanBuilder` class. - **Build()**: Builds the BBAN string. - **WithBankAccountNumber(string bankAccountNumber, bool enablePadding = true)**: Sets the bank account number. Padding can be enabled or disabled. - **WithBankIdentifier(string bankIdentifier, bool enablePadding = true)**: Sets the bank identifier. Padding can be enabled or disabled. - **WithBranchIdentifier(string branchIdentifier, bool enablePadding = true)**: Sets the branch identifier. Padding can be enabled or disabled. - **WithCountry(IbanNet.Registry.IbanCountry country)**: Sets the country for the BBAN. ``` -------------------------------- ### Infer IBAN using IbanBuilder Source: https://github.com/skwasjer/ibannet/wiki/IbanBuilder Use the IbanBuilder to construct an IBAN by specifying country, bank, branch, and account numbers. Ensure you have an IIbanRegistry instance, either default or from a DI container. Consider handling BankAccountBuilderException. ```csharp IIbanRegistry registry = IbanRegistry.Default; // Or use IIbanRegistry from a DI container. string iban = new IbanBuilder() .WithCountry("GB", registry) .WithBankIdentifier("NWBK") .WithBranchIdentifier("601613") .WithBankAccountNumber("31926819") .Build(); Console.WriteLine(iban); // GB29NWBK60161331926819 ``` -------------------------------- ### RejectCountryRule Constructor Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Initializes a new instance of the RejectCountryRule class, which validates that the IBAN does not belong to any of the specified rejected countries. ```APIDOC ## RejectCountryRule(IEnumerable rejectedCountryCodes) ### Description Initializes a new instance of the `RejectCountryRule` class. ### Parameters #### Path Parameters - **rejectedCountryCodes** (System.Collections.Generic.IEnumerable) - Required - A collection of country codes that are rejected. ``` -------------------------------- ### IBankAccountBuilder Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Framework_4.6.2.verified.txt Interface for building bank account structures. ```APIDOC ## IBankAccountBuilder ### Description Defines the contract for building bank account structures, supporting fluent chaining. ### Methods - `string Build()`: Builds the bank account structure. - `IBankAccountBuilder WithBankAccountNumber(string bankAccountNumber, bool enablePadding = true)`: Sets the bank account number. - `IBankAccountBuilder WithBankIdentifier(string bankIdentifier, bool enablePadding = true)`: Sets the bank identifier. - `IBankAccountBuilder WithBranchIdentifier(string branchIdentifier, bool enablePadding = true)`: Sets the branch identifier. - `IBankAccountBuilder WithCountry(IbanCountry country)`: Sets the country for the bank account. ``` -------------------------------- ### RegisterIbanNet with Configuration Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.DependencyInjection.Autofac.Tests/PublicApi/.NET_8.0.verified.txt Registers IbanNet services with the Autofac container and allows for custom configuration using a delegate. ```APIDOC ## RegisterIbanNet with Configuration ### Description Registers IbanNet services with the Autofac container and allows for custom configuration. ### Method Signature `public static Autofac.ContainerBuilder RegisterIbanNet(this Autofac.ContainerBuilder containerBuilder, System.Action configure, bool preserveStaticValidator = false)` ### Parameters * **containerBuilder** (Autofac.ContainerBuilder) - The Autofac container builder to register services with. * **configure** (System.Action) - An action to configure IbanNet options. * **preserveStaticValidator** (bool) - Optional. If true, preserves the static validator instance. Defaults to false. ``` -------------------------------- ### BbanBuilder Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Provides a fluent interface for building BBAN (Basic Bank Account Number) structures. ```APIDOC ## BbanBuilder ### Description Represents a builder for constructing BBAN structures. It allows setting various components of a BBAN through a fluent API. ### Methods - **BbanBuilder()**: Initializes a new instance of the BbanBuilder class. - **Build()**: Completes the BBAN construction and returns the resulting BBAN string. - **WithBankAccountNumber(string bankAccountNumber, bool enablePadding = true)**: Sets the bank account number. Padding can be enabled or disabled. - **WithBankIdentifier(string bankIdentifier, bool enablePadding = true)**: Sets the bank identifier. Padding can be enabled or disabled. - **WithBranchIdentifier(string branchIdentifier, bool enablePadding = true)**: Sets the branch identifier. Padding can be enabled or disabled. - **WithCountry(IbanCountry country)**: Sets the country for the BBAN structure. ``` -------------------------------- ### IBankAccountBuilder Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_8.0.verified.txt Interface for building bank account related structures. ```APIDOC ## IBankAccountBuilder ### Description Defines the contract for building bank account numbers and related components. ### Methods - `Build()`: Builds and returns the final bank account structure. - `WithBankAccountNumber(string bankAccountNumber, bool enablePadding = true)`: Sets the bank account number. - `WithBankIdentifier(string bankIdentifier, bool enablePadding = true)`: Sets the bank identifier. - `WithBranchIdentifier(string branchIdentifier, bool enablePadding = true)`: Sets the branch identifier. - `WithCountry(IbanCountry country)`: Sets the country for the bank account. ``` -------------------------------- ### IBankAccountBuilder Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Interface for building bank account related structures. ```APIDOC ## IBankAccountBuilder ### Description Defines the contract for building bank account numbers, including IBAN and BBAN. ### Methods - `string Build()`: Builds the bank account structure. - `IBankAccountBuilder WithBankAccountNumber(string bankAccountNumber, bool enablePadding = true)`: Sets the bank account number with optional padding. - `IBankAccountBuilder WithBankIdentifier(string bankIdentifier, bool enablePadding = true)`: Sets the bank identifier with optional padding. - `IBankAccountBuilder WithBranchIdentifier(string branchIdentifier, bool enablePadding = true)`: Sets the branch identifier with optional padding. - `IBankAccountBuilder WithCountry(IbanCountry country)`: Sets the country for the bank account. ``` -------------------------------- ### AcceptCountryRule Constructor Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Framework_4.7.2.verified.txt Initializes a new instance of the AcceptCountryRule class, which validates that an IBAN belongs to one of the specified country codes. ```APIDOC ## AcceptCountryRule(IEnumerable acceptedCountryCodes) ### Description Initializes a new instance of the `AcceptCountryRule` class. ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - None ### Constructor Signature `public AcceptCountryRule(System.Collections.Generic.IEnumerable acceptedCountryCodes)` ``` -------------------------------- ### BuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Framework_4.7.2.verified.txt Extension methods for working with IBANNet builders, providing convenient ways to obtain builders and set country information. ```APIDOC ## BuilderExtensions ### Description Provides extension methods for IbanNet builders. ### Methods - **GetBbanBuilder(this IbanNet.Registry.IbanCountry country)**: Gets a BBAN builder for the specified country. - **GetIbanBuilder(this IbanNet.Registry.IbanCountry country)**: Gets an IBAN builder for the specified country. - **WithCountry(this IbanNet.Builders.IBankAccountBuilder builder, string countryCode, IbanNet.Registry.IIbanRegistry registry)**: Sets the country for the builder using a country code and registry. ``` -------------------------------- ### IBankAccountBuilder Interface Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Interface for building bank account structures. Supports fluent chaining of operations. ```csharp public interface IBankAccountBuilder : IbanNet.IFluentInterface { string Build(); IbanNet.Builders.IBankAccountBuilder WithBankAccountNumber(string bankAccountNumber, bool enablePadding = true); IbanNet.Builders.IBankAccountBuilder WithBankIdentifier(string bankIdentifier, bool enablePadding = true); IbanNet.Builders.IBankAccountBuilder WithBranchIdentifier(string branchIdentifier, bool enablePadding = true); IbanNet.Builders.IBankAccountBuilder WithCountry(IbanNet.Registry.IbanCountry country); } ``` -------------------------------- ### SwiftRegistryProvider Class Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_10.0.verified.txt Provides IBAN country information from the SWIFT registry. ```APIDOC ## Class: SwiftRegistryProvider ### Description An implementation of `IIbanRegistryProvider` that retrieves IBAN country information from the SWIFT registry. ### Constructors - `SwiftRegistryProvider()` ``` -------------------------------- ### SwiftRegistryProvider Class Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.1_via_.NET_9.0.verified.txt Provides IBAN country information from the SWIFT registry. ```APIDOC ## Class: SwiftRegistryProvider ### Description An implementation of `IIbanRegistryProvider` that retrieves IBAN country information from the SWIFT registry. It implements `IEnumerable` and `IReadOnlyCollection`. ### Constructors - `SwiftRegistryProvider()` ### Properties - `Count` (int): Gets the number of countries in the registry. ``` -------------------------------- ### BuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_8.0.verified.txt Extension methods for creating and configuring builders. ```APIDOC ## BuilderExtensions ### Description Provides static extension methods to facilitate the creation and configuration of builders. ### Methods - `GetBbanBuilder(this IbanCountry country)`: Returns a new `BbanBuilder` for the specified country. - `GetIbanBuilder(this IbanCountry country)`: Returns a new `IbanBuilder` for the specified country. - `WithCountry(this IBankAccountBuilder builder, string countryCode, IIbanRegistry registry)`: Adds country information to the builder using a country code and registry. ``` -------------------------------- ### BuilderExtensions Source: https://github.com/skwasjer/ibannet/blob/main/test/IbanNet.Tests/PublicApi/.NET_Standard_2.0_via_.NET_Framework_4.8.verified.txt Extension methods for creating and configuring builders. ```APIDOC ## BuilderExtensions ### Description Provides static extension methods to facilitate the creation and configuration of IBAN and BBAN builders. ### Methods - **GetBbanBuilder(this IbanCountry country)**: Returns a new BBAN builder for the specified country. - **GetIbanBuilder(this IbanCountry country)**: Returns a new IBAN builder for the specified country. - **WithCountry(this IBankAccountBuilder builder, string countryCode, IIbanRegistry registry)**: Sets the country for the builder using a country code and an IBAN registry. ```