12.扩展字典(ExtensionDictionary)

愿你出走半生,归来仍是少年! 

环境:.NET FrameWork4.5、ObjectArx 2016 64bit、Entity Framework 6. 

        在10.扩展数据(XData)中我们讲到每个DbObject有一个XData对象可以存储数据,除此之外每个DbObject对象还有一个ExtensionDictionary(扩展字典)可以进行数据存储。

        在使用XData时为方便存取数据在一个实体上需要使用多个RegApplication进行区分,这个就要求在开发时进行提前的RegApp注册,这个比较麻烦;除此之外,据公司在CAD绘图的同事说,以前会有CAD中病毒导致扩展数据丢失的情况,所以可能扩展字典是一个更好的数据存储方式。

        除此之外XData数据存储是有上限的(16kb),然而扩展字典通过使用Xrecord(数据扩展记录)可达到2GB的数据存储量。

1.字典       

        扩展字典继承于DBDictionary 对象,DBDictionary 是CAD中存储非图形对象的容器。字典以两种方式存在,一种是存储在数据库中用来保存整个图纸的数据叫 NameDictionaries(命名对象字典),一种是储存在对象中用于保存对象的信息数据叫 ExtensionDictionary(对象扩展字典)。

2.扩展字典     

        扩展字典通常以键值对的方式存储数据,其键为文本格式,值为Xrecord(数据扩展记录)。每个DbObject对象在初始状态是并未拥有扩展字典的,需用通过CreateExtensionDictionary方法进行创建,创建后的字典可存储独属于该对象的数据。

        通过DBDictionary 对象的SetAt

相关推荐

  1. 12.Swift字典

    2024-01-12 06:10:03       46 阅读
  2. Python课堂11——字典

    2024-01-12 06:10:03       56 阅读
  3. opensips ACC模块扩展字段

    2024-01-12 06:10:03       33 阅读
  4. AutoMapper12.0.1 扩展方法封装

    2024-01-12 06:10:03       41 阅读
  5. 11、可扩展的Mysql

    2024-01-12 06:10:03       54 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-12 06:10:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-12 06:10:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-12 06:10:03       87 阅读
  4. Python语言-面向对象

    2024-01-12 06:10:03       96 阅读

热门阅读

  1. Wargames与bash知识14

    2024-01-12 06:10:03       58 阅读
  2. Spark: 检查数据倾斜的方法以及解决方法总结

    2024-01-12 06:10:03       53 阅读
  3. 探索计算机网络:应用层的魅力

    2024-01-12 06:10:03       63 阅读
  4. Linux 命令解释程序(shell)的模拟实现

    2024-01-12 06:10:03       49 阅读
  5. 初识C#语言

    2024-01-12 06:10:03       58 阅读
  6. Nacos:发现微服务的未来

    2024-01-12 06:10:03       53 阅读
  7. Docker容器,使用 Docker 做些什么

    2024-01-12 06:10:03       58 阅读
  8. LeetCode_5_中等_最长回文子串

    2024-01-12 06:10:03       57 阅读
  9. 定时音频数据采集并发送websocket实时播放

    2024-01-12 06:10:03       53 阅读
  10. python函数装饰器参数统计调用时间和次数

    2024-01-12 06:10:03       49 阅读