-
Notifications
You must be signed in to change notification settings - Fork 19
Home
Alex Wichmann edited this page Feb 23, 2023
·
3 revisions
The AsyncAPI.NET library is a document object model (DOM) for an AsyncAPI description document. It provides a set of classes for constructing semantically valid AsyncAPI specifications. The library also includes a writer for serializing the DOM into JSON or YAML AsyncAPI specifications
var myFirstAsyncApi = new AsyncApiDocument
{
Info = new AsyncApiInfo
{
Title = "my first asyncapi"
},
Channels = new Dictionary<string, AsyncApiChannel>
{
{
"users", new AsyncApiChannel
{
Subscribe = new AsyncApiOperation
{
OperationId = "users",
Description = "my users channel"
}
}
}
}
};
var yaml = myFirstAsyncApi.SerializeAsYaml();
//asyncapi: '2.6.0'
// info:
// title: my first asyncapi
// channels:
// users:
// subscribe:
// operationId: users
// description: my users channel
var httpClient = new HttpClient
{
BaseAddress = new Uri("https://raw.githubusercontent.com/asyncapi/spec/"),
};
var stream = await httpClient.GetStreamAsync("master/examples/streetlights-kafka.yml");
var asyncApiDocument = new AsyncApiStreamReader().Read(stream, out var diagnostic);
You can read more about more advanced ways to of reading or writing in the Wiki