Skip to content

LinkProperties dictionnary items do not serialize properties correctly, when using PostCreateViewAsync #400

Closed
@sqnz

Description

@sqnz

Hello, I posted this on ArangoDb's slack, channel dotnet.

When I call PostCreateViewAsync with LinksProperties, I noticed that the LinkProperties's collection properties are CamelCase, with an uppercase first letter. ArangoDb expect a lowercase first letter (camelCase), so the collection properties are ignored.

Here is a request I copied-pasted from wireshark to Postman, and execute. You can see that everything is camelCase (lowercase) except the Fields, IncludeAllFields, etc. in my links's Fichiers collection. In the response, you can see that the includeAllFields property is ignored. (I wanted true but it shows false, the default value)

image

This bug is not important because I use a workaround : I am sending the JSON request in a post request on the transport object.

Here is my code to reproduce (replace Project.Dal.Db! by your Db object) :

Dictionary<string, LinkProperties> links = new Dictionary<string, LinkProperties>();
links.Add("Fichiers", new LinkProperties()
{
    IncludeAllFields = true
});

await Project.Dal.Db!.View.PostCreateViewAsync(new ArangoDBNetStandard.ViewApi.Models.ViewDetails()
{
    Name = "VueTest20",
    Type = "arangosearch",
    Links = links
});

By the way, if it's hard to fix the serialization, we could do a workaround and document this in the readme. I read that we can provide our own json serialization in the readme, however I don't understand how to do it... maybe we could add an example in the readme.

Thanks!

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions