.NET 6 MongoDB C# - Das Feld des Jobject -Metadaten in der Klasse kann nicht serialisieren könnenC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 .NET 6 MongoDB C# - Das Feld des Jobject -Metadaten in der Klasse kann nicht serialisieren können

Post by Anonymous »

Ich arbeite mit .NET 6 und MongoDB und habe ein Modell, das eine dynamische Metadateneigenschaft enthält, die als Objekt gespeichert ist. Das Lesen dieses Objekts von MongoDB funktioniert perfekt, aber das Schreiben in die Datenbank führt einen Serialisierungsfehler aus. < /P>

Code: Select all

public class VersionAttributeModel : BaseNamedModel
{
public const string DescriptionPropertyName = "description";
public const string MetadataPropertyName = "metadata";
public const string DisplayNamePropertyName = "displayName";
public const string IsMultiValuePropertyName = "isMultivalue";
public const string IsMandatoryPropertyName = "isMandatory";

[BsonElement(DescriptionPropertyName)]
[JsonProperty(DescriptionPropertyName)]
public string Description { get; set; }

[BsonElement(MetadataPropertyName)]
[JsonProperty(MetadataPropertyName)]
public object Metadata { get; set; }

[BsonElement(DisplayNamePropertyName)]
[JsonProperty(DisplayNamePropertyName)]
public string DisplayName { get; set; }

[BsonElement(IsMultiValuePropertyName)]
[JsonProperty(IsMultiValuePropertyName)]
public bool IsMultiValue { get; set; }

[BsonElement(IsMandatoryPropertyName)]
[JsonProperty(IsMandatoryPropertyName)]
public bool IsMandatory { get; set; }
}
< /code>
Das Feld Metadaten ist typischerweise eine einfache Schlüsselwertstruktur, wie z.{ "test": "test", "key": "value" }


[*]

Code: Select all

{}


{ "ex": "ex" }< /code> < /p>
< /li>
< /ol>
Wenn ich dieses Objekt an die REST -API sende und versuche, die Metadaten in Debugger zu lesen, erhalte ich diesen Fehler: < /p>

Wir konnten nicht fund es finden. KEYVALUEPAIR`2 :: KEY) "Eigenschaft auf

Metadataklasstype (Newtonsoft. JSON. Linq. JProperty) Typ < /p>
< /blockquote>
Wenn ich versuche, ein Dokument zu speichern, das Metadata enthält, erhalte ich die folgende Fehler: Aufgetreten: Bei der Serialisierung der Metadateneigenschaft von Class VersionAttributemodel: Typ Newtonsoft.json.Linq.JObject ist nicht als Typ konfiguriert, der für diese Instanz der Objektserieller serialisiert werden darf. Das Box.
Wie kann ich serialisieren, damit das Objekt in MongoDB gespeichert werden kann?>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post