跳到主要内容

序列化规则

winML默认序列化 公共实例字段,如以下代码所示:

using System.Collections.Generic;

public class Data
{
public int id { get; set; } //不会被序列化

public string text; //会被序列化

public List<float> list; //会被序列化

public Data subdata; //会被序列化

private float number; //不会被序列化
}

序列化忽略

您可以通过特性winS.winML.WinMLIgnore来忽略对公共实例字段的序列化:

using System.Collections.Generic;
using winS.winML;

public class Data
{
public int id { get; set; } //不会被序列化

public string text; //会被序列化

public List<float> list; //会被序列化

[WinMLIgnore]
public Data subdata; //会被序列化->不再被序列化

private float number; //不会被序列化
}

序列化包含

通过使用特性winS.winML.WinMLInclude,您可以指定 私有实例字段公共实例属性 进行序列化:

using System.Collections.Generic;
using winS.winML;

public class Data
{
[WinMLInclude]
public int id { get; set; } //不会被序列化->会被序列化

public string text; //会被序列化

public List<float> list; //会被序列化

[WinMLIgnore]
public Data subdata; //会被序列化

[WinMLInclude]
private float number; //不会被序列化->会被序列化
}