@@ -177,6 +177,7 @@ public class RuleNode : GraphItem
177177 /// <summary>
178178 /// Node type: root, criteria, action, etc.
179179 /// </summary>
180+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
180181 public override string Type { get ; set ; } = "action" ;
181182
182183 /// <summary>
@@ -229,15 +230,28 @@ public override string ToString()
229230
230231public class GraphItem
231232{
233+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
232234 public virtual string Id { get ; set ; } = Guid . NewGuid ( ) . ToString ( ) ;
235+
236+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
233237 public virtual string Name { get ; set ; } = null ! ;
238+
239+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
234240 public virtual string Type { get ; set ; } = null ! ;
241+
242+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
235243 public virtual IEnumerable < string > Labels { get ; set ; } = [ ] ;
236244 public virtual double Weight { get ; set ; } = 1.0 ;
245+
246+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
237247 public virtual string ? Description { get ; set ; }
248+
249+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
238250 public virtual Dictionary < string , string ? > Config { get ; set ; } = [ ] ;
239251
240252 private string ? _alias ;
253+
254+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
241255 public virtual string Alias
242256 {
243257 get => string . IsNullOrEmpty ( _alias ) ? Name : _alias ;
@@ -267,6 +281,8 @@ public class EdgeItemPayload : GraphItem
267281
268282public class RuleGraphInfo
269283{
284+ [ JsonPropertyName ( "graph_id" ) ]
285+ [ JsonIgnore ( Condition = JsonIgnoreCondition . WhenWritingNull ) ]
270286 public string GraphId { get ; set ; }
271287 public IEnumerable < RuleNode > Nodes { get ; set ; } = [ ] ;
272288 public IEnumerable < RuleEdge > Edges { get ; set ; } = [ ] ;
0 commit comments