public static void SerializeInput()

in src/AlibabaCloud.OSS.V2/Transform/Functions.cs [18:46]


        public static void SerializeInput(
            Models.RequestModel request,
            ref OperationInput input,
            params CustomSerializer[] customSerializer
        )
        {
            // Headers
            if (input.Headers == null && request.Headers.Any())
                input.Headers = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);

            foreach (var h in request.Headers) input.Headers![h.Key] = h.Value;

            // Parameters
            if (input.Parameters == null && request.Parameters.Any()) input.Parameters = new Dictionary<string, string>();

            foreach (var h in request.Parameters) input.Parameters![h.Key] = h.Value;

            // body
            if (request.InnerBody != null)
                input.Body = request.BodyFormat switch
                {
                    "xml" => new MemoryStream(Encoding.UTF8.GetBytes(SerializeXml(request.InnerBody))),
                    _ => request.InnerBody as Stream ??
                        throw new NotImplementedException($"not support body type '{request.BodyFormat}'")
                };

            // custom serializer
            foreach (var serializer in customSerializer) serializer(ref request, ref input);
        }