How to use

November 24, 2022 ยท View on GitHub

.NET C# NATS template

This is a .NET C# NATS template for the AsyncAPI generator

All Contributors

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

NameDescriptionRequiredDefaultAllowed ValuesExample
versionVersion to use for the generated library.No0.0.1string1.0.1
projectNameName of the generated library.NoAsyncapiNatsClientstringMyCustomName
repositoryUrlRepository url for the project file, often needed for release pipelines.NoNonestringhttps://github.com/GamingAPI/rust-csharp-game-api.git
targetFrameworkSet the project target frameworks. Separate multiple by ;.Nonetstandard2.0;netstandard2.1stringnet461
packageVersionPackageVersion to use for the generated library.NoNonestring1.0.1
assemblyVersionAssemblyVersion to use for the generated library.NoNonestring1.0.1.0
fileVersionFileVersion to use for the generated library.NoNonestring1.0.1.0
serializationLibrarySerialization library for the underlying models.Nojsonnewtonsoft or json (system.text.json)`newtonsoft

Contributing

Before contributing please read the CONTRIBUTING document.

Contributors โœจ

Thanks goes to these wonderful people (emoji key):


Jonas Lagoni

๐Ÿ’ป ๐Ÿšง ๐Ÿ’ฌ ๐Ÿค” ๐Ÿ“– ๐Ÿ›

Lukasz Gornicki

๐Ÿ‘€

Yoeri Van Damme

๐Ÿ’ป

This project follows the all-contributors specification. Contributions of any kind welcome!