/ / ODataLib pour OData V4 prend-il en charge les données utiles Atom dans les demandes? - odata, atome, odatalib

Est-ce que ODataLib pour OData V4 prend en charge la charge utile Atom dans les requêtes? - odata, atom-feed, odatalib

J'essaie d'utiliser ODataLib pour le protocole OData V4(Microsoft.OData.Core) pour générer une charge utile au format Atom. Je me suis assuré que les en-têtes Content-Type et Accept font référence à application / atom + xml, mais un appel à CreateODataEntryWriter aboutit toujours à une exception:

Microsoft.OData.Core.ODataContentTypeException: un type MIME pris en charge impossible de trouver qui correspond aux types MIME acceptables pour le demande. Le type supporté "application / json; odata.metadata = minimal; odata.streaming = true; IEEE754Compatible = false, application / json; odata.metadata = minimal; odata.streaming = true; IEEE754Compatible = true, application / json; odata.metadata = minimal; odata.streaming = true, application / json; odata.metadata = minimal; odata.streaming = false; IEEE754Compatible = false, application / json; odata.metadata = minimal; odata.streaming = false; IEEE754Compatible = true, application / json; odata.metadata = minimal; odata.streaming = false, application / json; odata.metadata = minimal; IEEE754Compatible = false, application / json; odata.metadata = minimal; IEEE754Compatible = true, application / json; odata.metadata = minimal, application / json; odata.metadata = full; odata.streaming = true; IEEE754Compatible = false, application / json; odata.metadata = full; odata.streaming = true; IEEE754Compatible = true, application / json; odata.metadata = full; odata.streaming = true, application / json; odata.metadata = full; odata.streaming = false; IEEE754Compatible = false, application / json; odata.metadata = full; odata.streaming = false; IEEE754Compatib ... " ne correspond à aucun des types MIME acceptés "application / atom + xml".

Voici l'exemple de code qui provoque l'exception:

    var writerSettings = new ODataMessageWriterSettings();
writerSettings.SetContentType(ODataFormat.Atom);
var messageWriter = new ODataMessageWriter(request, writerSettings, model);
var entryWriter = messageWriter.CreateODataEntryWriter();

J'ai inspecté le code de la bibliothèque et constaté queODataMessageWriterSettings a une propriété EnableAtom mais cette propriété est déclarée comme interne et ne semble pas être définie depuis la bibliothèque. Il semble donc que ce soit toujours faux. Je sais que le format Atom est obsolète dans OData V4, est-il pris en charge pour la génération de charge d'entrée?

Réponses:

1 pour la réponse № 1

ATOM est désactivé depuis la version DataLib 6.3.0, voir note de sortie. En fait, vous pouvez utiliser une version ODataLib antérieure à la version 6.3 pour générer la charge ATOM, mais les nouvelles fonctionnalités de la V4 risquent de ne pas être bien prises en charge.