Skip to content

Instantly share code, notes, and snippets.

Last active February 22, 2021 05:55
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save dbarkol/7c8e6bb4817e77d477cd8fc7c2bee382 to your computer and use it in GitHub Desktop.
public class KafkaAvroAsyncSerializer<T> : IAsyncSerializer<T>
private readonly SchemaRegistryAvroObjectSerializer serializer;
public KafkaAvroAsyncSerializer(string schemaRegistryUrl, TokenCredential credential, string schemaGroup, Boolean autoRegisterSchemas = false)
this.serializer = new SchemaRegistryAvroObjectSerializer(
new SchemaRegistryClient(
new SchemaRegistryAvroObjectSerializerOptions()
AutoRegisterSchemas = autoRegisterSchemas
public async Task<byte[]> SerializeAsync(T o, SerializationContext context)
if (o == null)
return null;
using (var stream = new MemoryStream())
await serializer.SerializeAsync(stream, o, typeof(T), CancellationToken.None);
return stream.ToArray();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment