Moin,
ich versuche mich neuerdings mit Serialization von Objekten und nutze
wobei
War ja klar, dass das nicht gehen wird. Aber warum?
Eine kurze Erklärung, was ich da falsch mache, wäre nett.
Gruß
MQ
ich versuche mich neuerdings mit Serialization von Objekten und nutze
System.Text.Json.Serialization
wobei
Nodes
vom Typ ObservableCollection<TaskNode>
ist undC#-Quellcode
- public class TaskNode
- {
- private ProjectsTaskEntity _entity;
- public ProjectsTaskEntity Content => _entity;
- private ObservableCollection<TaskNode> _subtasks = new();
- public ObservableCollection<TaskNode> SubTasks => _subtasks;
- public int TaskId => _entity?.TaskId ?? -1;
- public string Name => _entity?.Name ?? "N/A";
- public int? CategoryId => _entity?.CategoryId;
- public int Ordinal => _entity?.Ordinal ?? -1;
- public bool Active => _entity?.Active ?? false;
- public int? ResourceId => _entity?.ResourceId;
- public int StateId => _entity?.StateId ?? 1;
- public string? Remark => _entity?.Remark;
- public int? ParentId => _entity?.ParentId;
- public int? PrecessorId => _entity?.PrecessorId;
- public int Priority => _entity?.Priority ?? 0;
- public decimal Costs => _entity?.Costs ?? 0;
- public DateTime? Start => _entity?.Start;
- public DateTime? End => _entity?.End;
- public int Progress => _entity?.Progress ?? 0;
- public DateTime? Due => _entity?.Due;
- public TaskNode(ProjectsTaskEntity e)
- {
- _entity = e;
- }
- public static implicit operator TaskNode(ProjectsTaskEntity e) => new(e);
- public override string ToString() => Name;
- public void Add(TaskNode n) => SubTasks.Add(n);
- }
System.InvalidOperationException: Each parameter in the deserialization constructor on type 'libProject.Classes.TaskNode' must bind to an object property or field on deserialization. Each parameter name must match with a property or field on the object. Fields are only considered when 'JsonSerializerOptions.IncludeFields' is enabled. The match can be case-insensitive.
War ja klar, dass das nicht gehen wird. Aber warum?
Eine kurze Erklärung, was ich da falsch mache, wäre nett.
Gruß
MQ