Aws-lambda-dotnet: Amazon.Lambda.Serialization.SystemTextJson.LambdaJsonSerializer Amazon.Lambda.Serialization.Json.JsonSerializer рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрд▓рдЧ рд╕рдВрдкрддреНрддрд┐ рдЖрд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 15 рдЕрдкреНрд░реИрд▓ 2020  ┬╖  43рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: aws/aws-lambda-dotnet

рдРрд╕рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЖрд╡рд░рдг рд╡реНрдпрд╡рд╣рд╛рд░ Amazon.Lambda.Serialization.Json.JsonSerializer рдФрд░ Amazon.Lambda.Serialization.SystemTextJson.LambdaJsonSerializer рдмреАрдЪ рдмрджрд▓ рдЧрдпрд╛ рд╣реИред

рдЕрдВрддрд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдХреБрдЫ рдирдореВрдирд╛ рдХреЛрдб рджрд┐рдП рдЧрдП рд╣реИрдВ:

// create an instance to serialize
var record = new Record {
    Foo = "Hello world!"
};

// show serialization with original Lambda serializer based on Newtonsoft.Json
var oldSerializer = SerializeWith(record, new Amazon.Lambda.Serialization.Json.JsonSerializer());
Console.WriteLine($"Amazon.Lambda.Serialization.Json.JsonSerializer: {oldSerializer}");

// show serialization with new Lambda serializer based on System.Text.Json
var newSerializer = SerializeWith(record, new Amazon.Lambda.Serialization.SystemTextJson.LambdaJsonSerializer());
Console.WriteLine($"Amazon.Lambda.Serialization.SystemTextJson.LambdaJsonSerializer: {newSerializer}");

// show serialization with System.Json.Text
var jsonTextSerializer = System.Text.Json.JsonSerializer.Serialize<Record>(record);
Console.WriteLine($"System.Text.Json.JsonSerializer: {jsonTextSerializer}");

// local functions
string SerializeWith<T>(T value, Amazon.Lambda.Core.ILambdaSerializer serializer) {
    using var buffer = new MemoryStream();
    serializer.Serialize<T>(value, buffer);;
    return System.Text.Encoding.UTF8.GetString(buffer.ToArray());
}

рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдирд┐рдореНрди рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддрд╛ рд╣реИ:

Amazon.Lambda.Serialization.Json.JsonSerializer: {"Foo":"Hello world!"}
Amazon.Lambda.Serialization.SystemTextJson.LambdaJsonSerializer: {"foo":"Hello world!"}
System.Text.Json.JsonSerializer: {"Foo":"Hello world!"}

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╡рд┐рд╖рдп рдореЗрдВ рд░рдЦрдирд╛ рд╕рдВрднрд╡ рд╣реИ?

рд╕рднреА 43 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╕рд╣рдордд рдореБрдЭреЗ 2 рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдмреАрдЪ рдЖрд╡рд░рдг рдХреЛ рд╕реНрд╡рд┐рдЪ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрд╕реНрдЯрдо рдЕрдиреБрд░реЛрдз рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреА рдХрдореА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкрд░реАрдХреНрд╖рдг рдЕрдм рдЬреНрдпрд╛рджрд╛рддрд░ AWS рдШрдЯрдирд╛рдУрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рдЕрдм рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рднреЗрдЬ рджрд┐рдпрд╛ рд╣реИ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдХреНрд╖рдореНрдп рд╣реИред рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рдПрдХ рдирдП рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реИ рдЬреЛ рдЖрд╡рд░рдг рд╢реИрд▓реА рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд╣реЗрд▓реА рдореЗрдВ рд╣реИ рддрд╛рдХрд┐ рдЖрдк рдЙрд╕ рдЖрд╡рд░рдг рдХреЛ рдШреЛрд╖рд┐рдд рдХрд░ рд╕рдХреЗрдВ рдЬрд┐рд╕рдХрд╛ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдореИрдВ рддрдм рдирдП рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддрд╛ рдерд╛ред рдЖрдк рдЙрд╕ рдХрд╛рдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕рд╛ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ?

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣рд╛рдБ рдХреНрдпрд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛ред рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рдирд╣реАрдВ рддреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рд▓реА рд╣реЛред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЧрд▓рддреА рдпрд╣ рдереА рдХрд┐ AWS рдХреЗ рдкрд╛рд╕ JSON рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдирд╛рдордХрд░рдг рдкрд░ рд╕реНрдерд┐рд░рддрд╛ рд╣реИ (рдпрд╛рдиреА AWSNamingPolicy )ред рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ред рдХреБрдЫ рд╕реЗрд╡рд╛рдПрдБ рдкрд╛рд╕реНрдХрд▓-рдЖрд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ CloudFormation:
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/crpg-ref-responses.html

рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЖрд╡рд░рдг рдмрджрд▓рдирд╛ рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ System.Text.Json рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рд╕рдореНрдорд╛рди рди рдХрд░рдирд╛ рдПрдХ рдШрд╛рддрдХ рджреЛрд╖ рд╣реИ, IMHOред рд╢рд╛рдпрдж рдПрдХ Amazon.Lambda.Serialization.SystemTextJson.LambdaJsonSerializerV2 рдЬрд╛рд░реА рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдФрд░ рдкреБрд░рд╛рдиреЗ рдХреЛ рдмрд░реНрдл рдкрд░ рд░рдЦ рджреЗрдВред

рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЕрд╕реЗрдВрдмрд▓реА рдПрд╕реЗрд╕рдореЗрдВрдЯ рдбрд┐рдХреНрд▓реЗрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдбрд┐рд╕рд░рд░рд╛рдЗрдЬреЗрд╢рди рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рд╣реА рд╣реИ?

[assembly: LambdaSerializer(typeof(Amazon.Lambda.SystemTextJson.LambdaJsonSerializer))]

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреНрдпрд╛ рдореБрдЭреЗ рдЗрд╕ рд╣реИрдВрдбрд▓рд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

Task<Stream> FunctionHandlerAsync(Stream stream, ILambdaContext context)

рдпрджрд┐ рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдпрд╛ рдкреНрд░рд╡реЗрд╢-рдмрд┐рдВрджреБ рдкрджреНрдзрддрд┐ рдХреЗ рд▓рд┐рдП LambdaSerializerAttribute рдШреЛрд╖рдгрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛?

@normj рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ json рдЧреБрдг рдХрд╛ рдирд╛рдо рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдП рдФрд░ рдЗрд╕рд▓рд┐рдП рдЖрд╡рд░рдг рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдирд╛рдордХрд░рдг рдХрд╛ рд╕рдореНрдорд╛рди рдХрд░реЗрдВ

рдореИрдВ рдЙрд╕ рд╕реБрдЭрд╛рд╡ рд╕реЗ рд╕рд╣рдордд рд╣реВрдБ - рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдХрдард┐рди рдХрд╛рдо рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рд╡реЗ рд╣рдореЗрд╢рд╛ рд╕рд╣реА рд╣реЛрддреЗ рд╣реИрдВред

@normj IMHO рдпрд╣ рдПрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореБрджреНрджрд╛ рд╣реИ рдЬрд┐рд╕рдХреА рдЬрд░реВрд░рдд рд╣реИ / BUG рдХреЗ рд░реВрдк рдореЗрдВ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ

@ 3GDXC рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдмрдЧ рд╣реИред рдмрд╕ рд╕рдорд╛рдзрд╛рди рдкрд░ рд╕реЛрдЪ рд░рд╣реЗ рд╣реИрдВред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдкреИрдХреЗрдЬ рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ LambdaJsonSerializer рдирд╛рдордХ рдПрдХ рд╕реАрд░рд┐рдпрд▓ рд╣реИред рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо PascalCaseLambdaJsonSerializer рдФрд░ CamelCaseLambdaJsonSerializer рд╕реАрд░рд┐рдпрд▓рд╛рдЗрдЬрд╝рд░ рдЬреЛ LambdaJsonSerializer рд╕реЗ рдмрдврд╝рд╛рддреЗ рд╣реИрдВред рдореИрдВ рдореМрдЬреВрджрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП PascalCaseLambdaJsonSerializer рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкрд▓реЗрдЯ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реВрдВред рдпрд╣ рд▓реЗрдореНрдмрдбрд╛рдЬрд╕рдирд╕рд┐рдпрд░рд▓рд╛рдЗрдЬрд░ рд╡реА 2 рд╣реЛрдиреЗ рдХреЗ

@normj IMHO рд╕рдВрджреЗрд╢ рд╕реЗ JsonPropertyName рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рднреНрд░рдо рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ рддрд╛рдХрд┐ рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рдХреЗ рд╡рд┐рдиреНрдпрд╛рд╕ / рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдкрд░рд┐рдгрд╛рдореА рдирд╛рдордХрд░рдг рдХреЗ рдирд╛рдордХрд░рдг рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛ рдЬрд╛рдПред

рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ .NET 3.1 рд╕рдорд░реНрдерди рдЬрд╛рд░реА рд╣реЛрдиреЗ рдХреЗ рдХреБрдЫ рджрд┐рдиреЛрдВ рдХреЗ рднреАрддрд░ рдЖрдкрдХреЗ рдЕрдирд┐рдЪреНрдЫреБрдХ рдкрд░рд┐рд╡рд░реНрддрди (рд╕реБрдзрд╛рд░ рдХреЗ рд╕рд╛рде) рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдирд┐рдЪреНрдЫреБрдХ рдХреНрдпреЛрдВ рд╣реИрдВ; рдФрд░ рдпрджрд┐ рд╣рдо (рд╣рдо рд░рд╛рдЬ) рдпреВрдкреА-рдлреЙрд░-рдЬреАрдПрдЖрд░рдмреАрдПрд╕ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЗрдХрд╛рдИ / рдкреНрд░рддрд┐рдЧрдорди рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╕рдореБрджрд╛рдп рдХреЛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрддрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдЬрд░реВрд░рдд рдкрдбрд╝рдиреЗ рдкрд░ рдЦреБрд╢ рд╣реЛрдирд╛ / рдЬрдм рд╕рд┐рд░реНрдл рд╢рдмреНрдж рдХрд╣рдирд╛ рд╣реЛред

рдорд╣рд╛рди рдХрд╛рдо рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЕрдм рддрдХ, рдЕрдореНрдмрд╛ рд▓рд╛рдВрдмрд╛ рдХреЛ рджреЗрдЦрдХрд░ рдкреНрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ .рдиреЗрдЯ рдХреЛрд░ рд╕рдорд░реНрдерди рдмрдврд╝рддрд╛ рд╣реИ

@ 3GDXC рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдЖрд╡рд░рдг рдХреЗрд╡рд▓ рд░рд┐рдЯрд░реНрди рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рд╣рдореЗрдВ .NET рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ JSON рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкрд░ рдЬрд╛рдирд╛ рд╣реИред рдХреБрдЫ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡рд╛рд▓реА рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ, рд╣рдо рдЬреЛрд╕рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдореИрдВ JsonPropertyName рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдпрд╣рд╛рдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ: https://github.com/aws/aws-lambda-dotnet/blob/master/Lbooks/src/Amile.Lambda.APIGatewayEvents/APIGatewayProxyResponseред рд╕реАрдПрд╕ # L18

рд╕рдорд╕реНрдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬреЛ рдЕрдиреНрдп рд▓реЛрдЧ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдореИрдВ рдирд┐рдпрдВрддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рдХрд┐ рд╡реЗ JsonPropertyName рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВред

@ рдиреЛрд░реНрдордЬ рдЧреБрдб рдкреЙрдЗрдВрдЯ; рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рд▓рд╛рд╣рдХрд╛рд░ рдХреЛ рдЖрдкрдХреЗ рдЧреБрдгреЛрдВ рдФрд░ / рдпрд╛ рдбреЗрдЯрд╛ рдЕрдиреБрдмрдВрдзреЛрдВ (рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ) рдХреЗ рд╕реНрдкрд╖реНрдЯ рдирд╛рдордХрд░рдг рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ALWAYS рдЙрдкрдпреЛрдЧ JsonPropertyName рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рднреА рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

@normj рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд▓реИрд╕рдирдбрд╛рд╕реЗрд░реАрд▓рд╛рдЗрдЬрд╝рд░ рдСрдХреНрд╢рди рдореЗрдВ JsonSerializerOptions рдХреЛ рдЕрд▓рдЧ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдП рддрд╛рдХрд┐ рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рдореЗрдВ рдХрд╕реНрдЯрдо рд╡рд┐рдХрд▓реНрдк рд╣реЛ рд╕рдХреЗрдВ рдЬрд┐рд╕реЗ рдбреЗрд╡рд▓рдкрд░ рдЕрд╕реЗрдВрдмрд▓реА / рдореЗрдердб рд▓реЗрд╡рд▓ рдкрд░ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рд╕рдХреЗ

рдЗрд╕реЗ рдПрдХ рдкреНрд░рддрд┐рдЧрдорди рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдиреЗ рдФрд░ рдЕрдзрд┐рдХ рдиреБрдХрд╕рд╛рди рдлреИрд▓рд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЕрдм рдЗрд╕реЗ рдПрдХ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд░реВрдк рдореЗрдВ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдореИрдВ рдЗрд╕реЗ _harm_ рдХрд╣рддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ LambdaJsonSerializer , рдЬреЛ System.Text.Json рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдЧреБрдгреЛрдВ рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░рдиреЗ рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рд╕рдореНрдорд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдмреЗрд╢рдХ [JsonPropertyName] рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрд╡рд╛рдВрдЫрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдХреБрдЫ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рднрд╛рд░реА рд▓рдЧрддреА рд╣реИред

рдХрд┐рддрдиреЗ рд▓реЛрдЧ рдЗрд╕реЗ _ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗ?!?!? _ рдкрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╡реЗ рдЕрдкрдиреЗ рдорд╛рдирдХ рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рдХреЗ рд░реВрдк рдореЗрдВ LambdaJsonSerializer рдХреЛ рдЕрдкрдирд╛рддреЗ рд╣реИрдВред

рдирдорд╕реНрддреЗ рд╡рд╣рд╛рдБ рдореИрдВ lambda рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП .net 3.1 + рдирдП serializer рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЪрд░рдг рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдпрд╣ рдХрд╣рд░ рдмрд░рдкрд╛ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЕрдм рдЙрддреНрдкрд╛рджрди рдКрдВрдЯ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдЕрдЧрд▓реА рд╕реНрдЯреЗрдЯ рдорд╢реАрди рдХрд╛ рдЖрдХрд╛рд░ рдЕрдореЗрдЬрд╝реЕрди рд╕реНрдЯреЗрдЯреНрд╕ рд▓реИрдВрдЧреНрд╡реЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирдП JSON рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕реНрдЯреЗрдк рдлрдВрдХреНрд╢рди рдЕрдкрд╡рд╛рдж рдХреЛ рдлреЗрдВрдХрддрд╛ рд╣реИред

рдкрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ kludgy рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИред рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХрд░рдХреЗ LAMBDA_NET_SERIALIZER_DEBUG=true , рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд░ рдореЗрдВ _.options рдХреЗ рдХрд╛рд░рдг рдорд╛рдорд▓реЗ рдЕрдЫреВрддрд╛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ serializer рдореЗрдВ рд╕реЗрдЯ рдХрднреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЕрддрд┐рд░рд┐рдХреНрдд JSON рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреНрд▓рд╛рдЙрдбрд╡рд╛рдЪ рд▓реЙрдЧ рдореЗрдВ рдЙрддреНрд╕рд░реНрдЬрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдирддреАрдЬреЛрдВ рдореЗрдВ рд╣реЛрдЧрд╛ред
https://github.com/aws/aws-lambda-dotnet/blob/master/Lbooks/src/Amazon.Lambda.Serialization.SystemTextJson/LambdaJsonSerializer .cs#L69 -L90

IMO, рдпрд╣ рд╣рдорд╛рд░реЗ рд╕рднреА рдореЙрдбрд▓реЛрдВ рдХреЛ [JsonPropertyName] рд╕рдЬрд╛рд╡рдЯ рдХреЗ рд╕рд╛рде рд╕рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рджрд░реНрдж рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдореЙрдбрд▓ рдХрдИ рдирдЧреЗрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рджрдлрди рд╣реИрдВред рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдореИрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдореВрд▓ PascalCasing рдкрд░ рд▓реМрдЯрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рд╣рдорд╛рд░реЗ рд╕реНрдЯреЗрдк рдлрдВрдХреНрд╢рди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдХрд╣рд▓рд╛рддрд╛ рд╣реВрдБ, рддреЛ рд▓реИрдореНрдмрдбрд╛ рдХреЗ рд╕рд╛рде PascalCaseLambdaJsonSerializer рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдареАрдХ рд░рд╣рддрд╛ рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж!

рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдХреБрд▓реНрдбреА рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдПрдХ рдмрдЧ рд╣реИред

рдЕрдкрд╕реНрдЯреНрд░реАрдо рдЕрд╕реЗрдВрдмрд▓реА рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдбреЗрдЯрд╛-рд╕рдВрд░рдЪрдирд╛рдУрдВ рдкрд░ рдЕрдЪреНрдЫрд╛ рдмрд┐рдВрджреБред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рд╣реИ рдХрд┐ [JsonPropertyName] рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдкрд░ рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рджреБрд╖реНрдкреНрд░рднрд╛рд╡ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди JSON рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рд╡рд╛рд▓реЗ LambdaJsonSerializer рдирд┐рд░реНрдорд╛рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЖрдк рдбрд┐рдлрд╝реЙрд▓реНрдЯ PascalCh рд╡реНрдпрд╡рд╣рд╛рд░ рджреНрд╡рд╛рд░рд╛ рд╡рд╛рдкрд╕ рд▓реМрдЯ рд╕рдХрддреЗ рд╣реИрдВ: JsonSerializerOptions.PropertyNamingPolicy рд╕реЗ null ред

# 628 рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдХрд░рдирд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕ рдЪрд░реНрдЪрд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред

APIGatewayProxyRequest.cs рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдХреЛрдИ [JsonPropertyName] рдПрдиреЛрдЯреЗрд╢рди рдирд╣реАрдВ рд╣реИрдВред рдПрдХрдорд╛рддреНрд░ рдХрд╛рд░рдг рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдП) рдХреЗрд╕-рдЕрд╕рдВрд╡реЗрджрдирд╢реАрд▓ deserialization рдХреЗ рд▓рд┐рдП LambdaJsonSerializer рдЪреВрдХ рдФрд░ рдмреА) LambdaJsonSerializer рдХреНрд░рдорд╛рдВрдХрди рдкрд░ рдКрдВрдЯ-рдЖрд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рд╕рд╣рд╛рдпрдХ рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ / рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡рд░реНрдЧреЛрдВ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рдиреЗ рдкрд░ рдЗрд╕рдиреЗ рдХрд┐рддрдиреЗ рдШрдВрдЯреЛрдВ рдХреА рдмрдЪрдд рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЬрдм рд╣рдо рд╕рд╣рд╛рдпрдХ рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рдЕрдкрдиреЗ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ LambdaJsonSerializer рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рд╣реЗрдВрдбрд╕рд╛рдЗрдЯ рдореЗрдВ, рдлрд╝рдВрдХреНрд╢рди рд╣реИрдВрдбрд▓рд░ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ POCO рд╡рд░реНрдЧ рдкрд░ [LambdaSerializer(typeof(Amazon.Lambda.Serialization.Json.JsonSerializer))] рдПрдиреЛрдЯреЗрд╢рди рд▓рдЧрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдлрд╝рдВрдХреНрд╢рди рдХреНрд▓рд╛рд╕ рдХреЗ рдмрдЬрд╛рдп рдЕрдзрд┐рдХ рд╕рдордЭрджрд╛рд░реА рдирд╣реАрдВ рд╣реЛрдЧреА? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐, рдЖрдЦрд┐рд░рдХрд╛рд░, рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЕрдиреБрд░реЛрдз / рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡рд░реНрдЧреЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

@bjorg IMO POCO рд╕реАрд░рд┐рдпрд▓ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд▓рдд рдЬрдЧрд╣ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ; POCO рдХреЗрд╡рд▓ рдбреЛрдореЗрди рдпрд╛рдиреА рдореЙрдбрд▓ рд╕рддреНрдпрд╛рдкрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдФрд░ рд╕рдВрдкрддреНрддрд┐ рдкреНрд░рдХрд╛рд░ / рдирд╛рдордХрд░рдг рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП; рдХреНрд░рдорд╛рдВрдХрди рдХреЛ рдЗрди рдореЙрдбрд▓ рдПрдиреЛрдЯреЗрд╢рди рдХрд╛ рд╕рдореНрдорд╛рди / рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

IMHO рд▓реИрдВрдмрдбрд╛рд╕реЗрд░реАрд▓рд╛рдЗрдЬрд╝рд░ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдХреНрд░рдорд╛рдВрдХрди рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред Amazon.Lambda.Serialization.Json.JsonSerializer рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХреНрд░рдорд╛рдВрдХрди рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде; рдпрджрд┐ рд╡рд┐рдХрд▓реНрдк рдХреА рдЖрдкреВрд░реНрддрд┐ рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИ рддреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдФрд░ рд╕рдВрдЧрдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рд▓реЗрдХрд┐рди POCO рдХреЛ рд╕рд╣реА рдХреНрд░рдорд┐рдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдиреЛрдЯреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: [JsonProperty] Newtonsoft рдХреЗ рд▓рд┐рдП рдФрд░ [JsonPropertyName] System.Text.Json рдХреЗ рд▓рд┐рдПред рдирддреАрдЬрддрди, POCO рд╕реАрд░рд┐рдпрд▓рд╛рдЗрдЬрд╝рд░ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ [DataMember] рджреЛрдиреЛрдВ Newtonsoft.Json рдФрд░ System.Text.Json рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реЛрдВрдЧреЗред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдмрд╛рдж рдХреЗ рд▓рд┐рдП .NET 5 рддрдХ рдирд╣реАрдВред :(
https://github.com/dotnet/runtime/issues/29975

рдЗрд╕ рдмреАрдЪ, рдПрдХ рд╕рдорд╛рдзрд╛рди рд╕рднреА POCO рдХреЛ [DataMember] рдФрд░ [JsonPropertyName] рд╕рд╛рде рдПрдиреЛрдЯреЗрдЯ рдХрд░рдиреЗ рдХрд╛ рд╣реЛрдЧрд╛ред рджреЛрдиреЛрдВ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ .NET рдХреЛрд░ 3.1 рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдмрд╛рд╣рд░реА рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдХрдо рд╕реЗ рдХрдо рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдирд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд╕рдВрдЧрдд рдХреНрд░рдорд╛рдВрдХрди / deserialization рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛? рдХрдиреНрд╡рд░реНрдЯрд░реНрд╕ рдХреЛ ILambdaSerialize рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рджреНрд╡рд╛рд░рд╛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рдЗрд╕рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рдореБрджреНрджрд╛ рдмрдВрдж рд╣реИред рд╕реНрдХрд┐рдо рдХреЛ рдкрдврд╝рдиреЗ рд╕реЗ рдореЗрд░реА рд╕рдордЭ рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВ: https://github.com/dotnet/runtime/issues/29975#issuecomment -609985802

рд╣рд╛рдВред рдореИрдВрдиреЗ рдЧрд▓рдд рдкрдврд╝ рд▓рд┐рдпрд╛ред рдореИрдВрдиреЗ 5.0 рд▓рд┐рдВрдХ рджреЗрдЦрд╛ рдФрд░ рдЧрд▓рдд рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ред

рдореИрдВрдиреЗ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ PR https://github.com/aws/aws-lambda-dotnet/pull/636 рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ред рдореИрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдБ рдпрд╛ рдЕрднреА рддрдХ рдкреАрдЖрд░ рдореЗрдВ рд▓рд┐рдВрдХ рд╕реЗ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдмрд┐рд▓реНрдб рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рдФрд░ рдЖрдкрдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдЗрддрдиреА рдЬрд▓реНрджреА рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдХрд┐ рдЗрд╕рдиреЗ рдЖрдкрдХрд╛ рд╢рдирд┐рд╡рд╛рд░ рдмрд░реНрдмрд╛рдж рдХрд░ рджрд┐рдпрд╛ред

рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдпрд╣ рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИред рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рднреА Newtonsoft.Json рд╕рдВрджрд░реНрднреЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╣реВрдВ рдФрд░ рдореИрдВ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рд╣реВрдВ рдЬрд╣рд╛рдВ рдореИрдВ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╕рддреНрдпрд╛рдкрди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдЕрднреА рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдмрд╕ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рд╡рд░реНрдЧ рдХреА рдирдХрд▓ рдХреА рдФрд░ рдЖрдкрддреНрддрд┐рдЬрдирдХ рдмрдпрд╛рди рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ред рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдХрд▓ рдИрдУрдбреА рджреНрд╡рд╛рд░рд╛, рдореИрдВ рдЕрдкрдиреА рджреЗрд╡ рд╢рд╛рдЦрд╛ рдореЗрдВ рдЗрд╕ рдмрджрд▓рд╛рд╡ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдкрд╣рд▓реА рдмрд╛рдд рдЬреЛ рдорди рдореЗрдВ рдЖрддреА рд╣реИ рд╡рд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЧрд╛рдпрдм рдПрдиреЛрдЯреЗрд╢рди рд╣реИред рдХреНрдпрд╛ рдХреЛрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдбреЗрдЯрд╛-рд╕рдВрд░рдЪрдирд╛рдПрдВ рдереАрдВ, рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ [DataMember] рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдирд┐рд╣рд┐рдд рдКрдВрдЯ-рдЖрд╡рд░рдг рдкрд░ рднрд░реЛрд╕рд╛ рдХрд┐рдпрд╛?

@bjorg рдХреЛрдИ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВред рдПрдХ рд╣рдлреНрддреЗ рдХреА рдмреИрдардХреЛрдВ рдХреЗ рдмрд╛рдж, рдбреЙрдХреНрд╕ рд▓рд┐рдЦрдирд╛ рдФрд░ рд╕реНрдХреВрд▓ рдХреЗ рдмрдЪреНрдЪреЛрдВ рдХреА рдорджрдж рдХрд░рдирд╛ рдХреБрдЫ рд╢рд╛рдВрдд рдХреНрд╖рдгреЛрдВ рдФрд░ рдХреБрдЫ рд╢рдирд┐рд╡рд╛рд░ рдХреЛрдбрд┐рдВрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╣реА рдЖрд░рд╛рдорджрд╛рдпрдХ рдерд╛ред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдиреНрдпреВрдЯрдирд╕реЙрдлреНрдЯ рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХ рдХреЗ рд╕рд╛рде [DataMember] рдПрдиреЛрдЯреЗрд╢рди рдЧреБрдо рд╣реЛрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдереАред рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЪрд┐рдВрддрд┐рдд рдирд╣реАрдВ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдЬреНрдЮрд╛рдд рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдореЗрд░рд╛ рдЕрдВрддрд░ рдХрд╕реНрдЯрдо рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдпрд╛рдж рдХрд░ рд░рд╣рд╛ рдерд╛ред

рдХреНрдпрд╛ -rc1 рдЬрд╛рд░реА рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛? рд╡рд┐рдХрд▓реНрдк, AFAIK, рдореЗрд░реЗ рд▓рд┐рдП рд╣реИ рдЕрдиреНрдпрдерд╛ рдореЗрд░реЗ _.csproj_ рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рд╣реИрдХ рдХрд░реЗрдВ рдЬреЛ рд╕рд╣реА рд╕рдВрдХрд▓рди рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рд╕рд╛рде рд╕рдХреНрд╖рдо рд╣реИрдВред рдХреНрдпрд╛ рдХреЛрдИ рдФрд░ рддрд░реАрдХрд╛ рд╣реИ?

@bjorg рдкреАрдЖрд░ рдореЗрдВ рд╡рд╣рд╛рдБ рдПрдХ рдЬрд╝рд┐рдк рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж NuGet рдкреИрдХреЗрдЬ рд╣реЛрддреЗ рд╣реИрдВ, рдХреНрдпрд╛ рдЖрдк рдХрд┐рд╕реА рд╕реНрдерд╛рдиреАрдп NuGet рд╕реНрд░реЛрдд рдХреЛ рд╕реЗрдЯрдЕрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреИрдХреЗрдЬ рдХреЛ рд╡рд╣рд╛рдБ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ?

рдЖрдЬ рдХреБрдЫ рдирдпрд╛ рд╕реАрдЦрд╛: рдХреИрд╕реЗ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдлрд╝реАрдб рд╣реИред .NET рдХреЛрд░ рдореЗрдВ рд╕реБрдкрд░ рдЖрд╕рд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ( SO рд▓реЗрдЦ рджреЗрдЦреЗрдВ )ред

рдореЗрд░реА рд╕рдмрд╕реЗ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ _options рдХреЛ рдПрдХ рд╕рдВрд░рдХреНрд╖рд┐рдд / рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ Options рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдЬрд╛рдЧрд░ рдХрд░рдирд╛ рд╣реИ рддрд╛рдХрд┐ рдПрдХ рд╡реНрдпреБрддреНрдкрдиреНрди рд╡рд░реНрдЧ рдЗрд╕реЗ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗред

рдЕрдиреНрдпрдерд╛, рдореЗрд░реА рддрд░рдл рд╕реЗ рдЗрд╕ рдирдП рдХреЛрдб рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИред рдзрдиреНрдпрд╡рд╛рдж!

@normj рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ / рдЬрдм рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рдирдЧреЗрдЯ рдкреИрдХреЗрдЬ рд╣реИрдВред рдПрдХ рдФрд░ рдЯреЗрд╕реНрдЯ рд░рди рджреЗрдХрд░ рдЦреБрд╢реА рд╣реБрдИред

https://github.com/aws/aws-lambda-dotnet/issues/544#issuecomment -567780775

^ рдХреНрдпрд╛ рдпрд╣ рдЗрд╕рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдКрдВрдЯ рдЖрд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдкреАрдЖрдИ рдЧреЗрдЯрд╡реЗ рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИ?

рдХреЙрдореН рдкрд╛рд╕реНрдХрд▓ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрджрд┐ рд▓реИрдореНрдмреНрдбрд╛ рдПрдПрд▓рдмреА рдкрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдкреАрдЖрдИ рдЧреЗрдЯрд╡реЗ рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЕрд╕рдВрдЧрддрддрд╛ рднреНрд░рд╛рдордХ рд╣реИред System.text рдкрд░ рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛?

рдпрд╣ рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдЪреЗрдВрдЬ рд╣реИ; рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЖрдЬреНрдЮрд╛рдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред рдПрдХреАрдХрд░рдг рдкрд░реАрдХреНрд╖рдг рдФрд░ / рдпрд╛ рдПрдХ рд░рд┐рд▓реАрдЬ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╕рдореБрджрд╛рдп рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЕрд▓рдЧрд╛рд╡ рдЕрд▓рдЧрд╛рд╡ рдХреЗ рдЗрд╕ рдЙрд▓реНрд▓рдВрдШрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлрд┐рд╕рд▓ рдЧрдпрд╛ рд╣реИред рдЕрдм рдпрд╣ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рд▓рд╛рдЧрдд рдФрд░ рдмрд░реНрдмрд╛рдж рдХрд┐рдП рдЧрдП рдорд╛рдирд╡-рдШрдВрдЯреЛрдВ рдХреЛ рдЕрдирд╕реБрд▓рдЭрд╛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг AWS рдХреНрд▓рд╛рдЗрдВрдЯреНрд╕ рдХреЛ рдиреБрдХрд╕рд╛рди рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк AWS рдХреЛ рдкреНрд░рддрд┐рд╖реНрдард╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧреАред

рдореИрдВ рдЖрдкрдХреЛ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЯреВрдЯреЗ рдФрд░ рд╣рддреЛрддреНрд╕рд╛рд╣рд┐рдд рдкреНрд░рд╡рд╛рд╕ рдХреЛ 3.1 рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ рдЬрдм рддрдХ рдХрд┐ рдПрдХ рдлрд┐рдХреНрд╕ рдкрд░ рд╕рд╣рдорддрд┐ рди рд╣реЛред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдореИрдВ рдпрд╣ рднреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдФрд░ рдХрдо рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдореБрджрд╛рдп рджреНрд╡рд╛рд░рд╛ рдХрд┐рд╕реА рднреА рддрдп рдЪрд░реНрдЪрд╛ рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рдП

@lukebrowell рд╕реАрд░реАрдЬрд╝рд┐рдпрд░ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдЬрдирддрд╛ рдореЗрдВ рдЬрдирд╡рд░реА рдореЗрдВ рд╡рд╛рдкрд╕ рдкреНрд░рд╕реНрддреБрдд рдкреАрдЖрд░ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред https://github.com/aws/aws-lambda-dotnet/pull/568 PR рдиреЗ рдХрд╕реНрдЯрдо рд▓реИрдВрдмрдбрд╛ рд░рдирдЯрд╛рдЗрдореНрд╕ рдХреЗ рд╕рд╛рде рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░реАрдмрд┐рд▓реНрдЯ рдкреИрдХреЗрдЬ рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ред

рд╣рдо рдпрд╣рд╛рдВ рдкреАрдЖрд░ рдХреЗ рд╕рд╛рде рдлрд┐рдХреНрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдореИрдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдлрд┐рдХреНрд╕ https://github.com/aws/aws-lambda-dotnet/pull/636 рдкрд░ рдлреАрдбрдмреИрдХ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рдХрд░рддрд╛ рд╣реВрдВ

рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдЪреЗрдВрдЬ рд╣реИ рдФрд░ рдореИрдВ рдирд┐рд░рд╛рд╢ рд╣реВрдВ рдХрд┐ рдРрд╕рд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдИ рдЧрдИ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рдЕрд╕рд╣рдордд рд╣реВрдВред рд╕рдорд╕реНрдпрд╛ рдХреЗрд╡рд▓ рд▓реИрдореНрдмреНрдбрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИ рдЬреЛ рдХрд╕реНрдЯрдо рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдБ рд▓реМрдЯрд╛рддреА рд╣реИ, рд╕рднреА рд▓реИрдореНрдмреНрдбрд╛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдФрд░ рдореМрдЬреВрджрд╛ Amazon.Lambda.Serialization.Json рд╣реА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рдирд╛ рдЙрдЪрд┐рдд рд╣реИ рдХрд┐ рдкреВрд░реЗ 3.1 рд▓реИрдореНрдмреНрдбрд╛ рд░рд┐рд▓реАрдЬ рдЯреВрдЯ рдЧрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдлрд┐рд░ рд╕реЗ рдореБрдЭреЗ рдирд┐рд░рд╛рд╢рд╛ рд╕рдордЭ рдореЗрдВ рдЖрддреА рд╣реИ рдФрд░ рдореБрдЭреЗ рдЦреЗрдж рд╣реИ рдХрд┐ рдпрд╣ рдмрдЧ рдлрд┐рд╕рд▓ рдЧрдпрд╛ред

рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЬрдм рддрдХ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рдЖрдПрдЧреА, рддрдм рддрдХ рдкреАрдЖрд░ рдореЗрдВ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЛ рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдореЗрдВ рдзрдХреЗрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

@bjorg рдкреАрдЖрд░ рдХреЛ рдкреНрд░реАрдмрд┐рд▓реНрдЯ рдкреИрдХреЗрдЬ рдХреЗ рдкреНрд░реАрд╡реНрдпреВ 2 рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред https://normj-packages.s3.us-west-2.amazonaws.com/rework-serialization-preview2.zip

@normj рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реИ рдХрд┐ рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рдпрд╛рдж рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рд╕рдореБрджрд╛рдп рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдпрд╣рд╛рдБ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ (рд╣рдо) рдиреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд▓реИрдореНрдмрдбрд╛ рдЫрд╡рд┐ рдХреЗ рд░реВрдк рдореЗрдВ .netcore 3.1 рд░рдирдЯрд╛рдЗрдо рдХреЛ рдЬрд╛рд░реА рдХрд░рдиреЗ / рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрдмрд╛рд╡ рджрд┐рдпрд╛ рдерд╛ рдФрд░ рдЗрд╕рдиреЗ рд░рд┐рдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ рдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рджреА рдереАред IMHO рдЬрдмрдХрд┐ рдореИрдВ рдЖрдкрдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреЛ @lukebrowell рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдордЭрддрд╛ рд╣реВрдВ, рдореИрдВ рджреВрдВрдЧрд╛ рдХрд┐ рдХрд╛рд░реНрдп рдХреА рдПрдХ рдЗрдХрд╛рдИ рд╢реБрд░реВ рдХреА рдЬрд╛рдП (рдкреВрд░реНрдг рд╕рдореБрджрд╛рдп рдХреА рднрд╛рдЧреАрджрд╛рд░реА рдХреЗ рд╕рд╛рде) рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП / рдПрд╕реНрдкреЗрд░рд╛рдВрдд рд▓реИрдореНрдмреНрдбрд╛ рдлрд╝рдВрдХреНрд╢рди / рд╕реЗрд╡рд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдбрд┐рдЬрд╛рдЗрди рдХрд┐рд╕реА рднреА рдХрдорд┐рдпреЛрдВ рдФрд░ / рдпрд╛ рдмрдЧ рдХреЛ рдкрд╣рдЪрд╛рдирдиреЗ рдХреА рджреГрд╖реНрдЯрд┐ рд╕реЗ рдЬреЛ рдХрд┐ рдПрдХ рдордиреЛрд░ рдореЗрдВ рдкрд╣рдЪрд╛рдирд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреИрдХреЗрдЬ рдереЛрдбрд╝рд╛ рднреАрдбрд╝ рднрд░рд╛ рдХрд╛рдо рд╣реИ рдЯреАрдмреАрдПрдЪред

рдореИрдВ рдПрдХ рдордЬрдмреВрдд рд╕рдореБрджрд╛рдп рджреЗрдЦрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рдореИрдВ awsdevelopers.slack.com рдкрд░ рд╣реИрдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди #dotnet рдЪреИрдирд▓ рдПрдХ рд╢рд╛рдВрдд рдЪреБрдк рд╣реИред рдХреНрдпрд╛ рдПрдХ рдФрд░ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ рд▓реИрдореНрдмреНрдбрд╛ .NET рдХреЛрд░ рд▓реЛрдЧ рдордгреНрдбрд▓реА рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

@bjorg рдореИрдВ рд╢рд╛рдорд┐рд▓

@bjorg рд╕реЗ рдЖрдордВрддреНрд░рдг рдорд┐рд▓рдирд╛ рд╕рдВрднрд╡ рд╣реИ?

рдордзреНрдпрд╕реНрдереЛрдВ рд╕реЗ рдирд┐рдордВрддреНрд░рдг рд▓рд┐рдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ред рдЗрд╕реЗ рдпрд╣рд╛рдБ рдкреЛрд╕реНрдЯ рдХрд░реЗрдВрдЧреЗред

рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╡рд┐рд╖рдп рдореЗрдВ рд░рдЦрдирд╛ рд╕рдВрднрд╡ рд╣реИ?

рд╕рд╣рдордд рд╣реИрдВ, рдЪрд▓реЛ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рд░рдЦреЗрдВред рдореИрдВрдиреЗ AWS рд╕реНрд▓реИрдХ рд╕рдореВрд╣ рдореЗрдВ рдЖрдкрдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рдореБрджреНрджрд╛ # 647 рдмрдирд╛рдпрд╛ред

рд╣рд╛рдВ, рдореИрдВ рдЗрд╕ рдмрд╛рдд рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдмреЗрд╣рддрд░ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╕рдВрдЪрд╛рд░ рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рдЬрд╣рд╛рдВ рдореИрдВ рдЕрдкрдиреЗ рд╕рдВрдЪрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреЗрд╣рддрд░ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдореИрдВ рдХреИрд╕реЗ рдЗрд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВред

_preview2_ рдореБрдЭреЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИред

Amazon.Lambda.Serialization.SystemTextJson рдХреЗ рд╕рдВрд╕реНрдХрд░рдг 2.0.0 рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд╕рд╛рде рдмрд╛рд╣рд░ рд╣реИред рдореБрдЦреНрдп рджреВрд░ рд▓реЗ рдпрд╣ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП serializer рд╡рд░реНрдЧ DefaultLambdaJsonSerializer ред

рдореИрдВрдиреЗ рдПрдХ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рднреА рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд┐рд╕рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдЕрдиреБрднрд╛рдЧ рд╣реИред
https://aws.amazon.com/blogs/developer/one-month-update-to-net-core-3-1-lambda/

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

briancullinan picture briancullinan  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Kralizek picture Kralizek  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

martincostello picture martincostello  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

matheusmaximo picture matheusmaximo  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jakejscott picture jakejscott  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ