public async Task CustomEncode()
        {
            // #tag::custom-encode[]
            var serializer = new DotnetJsonSerializer();
            var transcoder = new JsonTranscoder(serializer);

            var user = new User
            {
                Name = "John Smith",
                Age  = 27
            };

            await _collection.UpsertAsync("john-smith", user, options => options.Transcoder(transcoder));

            // #end::custom-encode[]
        }
        public async Task CustomDecode()
        {
            // #tag::custom-decode[]
            var serializer = new DotnetJsonSerializer();
            var transcoder = new JsonTranscoder(serializer);

            var user = new User
            {
                Name = "John Smith",
                Age  = 27
            };

            var result = await _collection.GetAsync("john-smith", options => options.Transcoder(transcoder));

            var returnedUser = result.ContentAs <User>();
            // #end::custom-decode[]
        }