Flurl.Http.Xml icon indicating copy to clipboard operation
Flurl.Http.Xml copied to clipboard

[Request] Configurable XmlSerializer

Open eFse7en opened this issue 3 years ago • 1 comments

Hello, are there any plans to make the XmlSerializer configurable?

I am using flurl in integration tests, and currently I have to use my own extensions to make the XML de-serialization error sensitive:

public static XmlSerializer NewXmlSerializerWithErrorHandling<T>()
{
    var serializer = new XmlSerializer(typeof(T));
    serializer.UnknownAttribute += Serializer_UnknownAttribute;
    serializer.UnknownElement += Serializer_UnknownElement;
    serializer.UnknownNode += Serializer_UnknownNode;
    serializer.UnreferencedObject += Serializer_UnreferencedObject;
    return serializer;
}

On the other hand json de-serialization is configurable (even globally):

FlurlHttp.Configure(settings =>
{
    settings.BeforeCall = BeforeFlurlCall;
    settings.AfterCall = AfterFlurlCall;
    settings.OnError = OnFlurlError;
    settings.JsonSerializer = new NewtonsoftJsonSerializer(new JsonSerializerSettings
    {
        MissingMemberHandling = MissingMemberHandling.Error
    });
    //settings.XmlSerializer() = ...;
});

eFse7en avatar Nov 19 '20 17:11 eFse7en