// 设置元素的扩展信息
private void SetSchemaEntity(ref Element element, IDictionary<string, string> dicInfo)
{
Guid guid = Guid.NewGuid();
SchemaBuilder bulder = new SchemaBuilder(guid);
bulder.SetReadAccessLevel(AccessLevel.Public);
bulder.SetWriteAccessLevel(AccessLevel.Public);
bulder.SetSchemaName("字典信息");
bulder.SetDocumentation("Data store for " + "字典信息");
FieldBuilder fiedBuilder = bulder.AddMapField("字典信息", typeof(string), typeof(string));
Schema schema = bulder.Finish();
Entity entity = new Entity(schema);
Field field = schema.GetField("字典信息");
entity.Set(field, dicInfo);
element.SetEntity(entity);
}
//获取元素的扩展信息
private Dictionary<string, string> GetSchemaEntity(Element element)
{
try
{
IList<Guid> listGuids = element.GetEntitySchemaGuids();
Schema schema = Schema.Lookup(listGuids[0]);
Entity entity = element.GetEntity(schema);
Dictionary<string, string> dicMap = entity.Get<Dictionary<string, string>>(schema.GetField("字典信息"));
return dicMap;
}
catch (Exception)
{
return null;
}
}