我正在尝试找到一种方法,可以将 C# 类作为 XRecord 存储到 AutoCAD 实体中。例如,我有以下课程:
public class ExampleClass
{
private int x;
private int y;
public ExampleClass(int x, int y)
{
this.x = x;
this.y = y;
}
#region Getters and Setters
}
我创建了一个实例:
ExampleClass objToStoreInXRecord = new ExampleClass(3, 5);
将其存储到 AutoCAD 实体(例如图形中的一条线)XRecord 中的最佳方法是什么,以便我可以执行以下操作:
ExampleClass objRecoveredFromXRecord = GetXRecordFromEntity(Entity e)
其中 GetXRecordFromEntity(Entity e) 是我可以编写的一个辅助方法,它接受一个实体 e,获取我之前存储的对象的 XRecord,然后返回它。
我对 XRecord 的工作原理以及 XRecord 与 AutoCAD 的命名对象字典 (NOD) 的关系没有很好的了解。我已经看到了使用二进制格式化程序对要存储在 XRecord 中的对象进行序列化并将序列化数据存储在实体的 XRecord 中的实现,但我正在寻找更好的方法。