.NET C# NATS template
This is a .NET C# NATS template for the AsyncAPI generator
This template is for generating a .NET C# wrapper for the NATS client based on your AsyncAPI document. The template is based on the nats.net library.
Have you found a bug or have an idea for improvement? Feel free to contribute! See the contribution guidelines how to do so.
Example usage
Given any AsyncAPI file (AsyncAPI.yml
) first generate the client with the AsyncAPI generator such as
ag --install --output ./nats-client ./AsyncAPI.yml @asyncapi/dotnet-nats-template
How to use
The generated output shall be seen a separate library (similar to any REST API client), that can be interacted with. It generates all the necessary functionality for you to easily interact with the NATS broker based on the AsyncAPI definition of the application.
Requirements
- @asyncapi/generator < v2.0.0 >v1.1.1
Install the generator through npm or run it from docker official installer.
Template configuration
You can configure this template by passing different parameters in the Generator CLI: -p PARAM1_NAME=PARAM1_VALUE -p PARAM2_NAME=PARAM2_VALUE
Name | Description | Required | Default | Allowed Values | Example |
---|
version | Version to use for the generated library. | No | 0.0.1 | string | 1.0.1 |
projectName | Name of the generated library. | No | AsyncapiNatsClient | string | MyCustomName |
repositoryUrl | Repository url for the project file, often needed for release pipelines. | No | None | string | https://github.com/GamingAPI/rust-csharp-game-api.git |
targetFramework | Set the project target frameworks. Separate multiple by ; . | No | netstandard2.0;netstandard2.1 | string | net461 |
packageVersion | PackageVersion to use for the generated library. | No | None | string | 1.0.1 |
assemblyVersion | AssemblyVersion to use for the generated library. | No | None | string | 1.0.1.0 |
fileVersion | FileVersion to use for the generated library. | No | None | string | 1.0.1.0 |
serializationLibrary | Serialization library for the underlying models. | No | json | newtonsoft or json (system.text.json)` | newtonsoft |
Contributing
Before contributing please read the CONTRIBUTING document.
Contributors ✨
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!