明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 862|回复: 2

[基础] 求教MoveNext()的使用方法

[复制链接]
发表于 2015-3-18 15:09 | 显示全部楼层 |阅读模式
本帖最后由 xkaeli 于 2015-3-18 15:20 编辑

求教我使用DbDictionaryEnumerator.MoveNext()函数时老是在随机位置意外崩溃,有时刚处理两张图就崩溃了,有时处理几十张图也不会出事。但是当运行完这些代码以后无论发生哪种情况,在关闭CAD程序时CAD都会崩溃。
以下代码:
  1. ObjectId layid = db.LayoutDictionaryId;
  2.                     DBDictionary dbd = tran.GetObject(layid, OpenMode.ForRead) as DBDictionary;
  3.                     DbDictionaryEnumerator dbde =dbd.GetEnumerator();
  4.                     Layout lay;
  5.                     while (dbde.MoveNext())
  6.                     {
  7.                         layid = dbde.Value;
  8.                         lay = tran.GetObject(layid, OpenMode.ForRead) as Layout;
  9.                         filList[2] = new TypedValue((int)DxfCode.LayoutName, lay.LayoutName);
  10.                         prompsel = ed.SelectAll(selfilter);
  11.                         if (prompsel.Status != PromptStatus.Error)
  12.                         {
  13.                             spage = prompsel.Value.Count;
  14.                             for (int i = 0; i < spage; i++)
  15.                             {
  16.                                 blrf = tran.GetObject(prompsel.Value[i].ObjectId, OpenMode.ForRead) as BlockReference;
  17.                                 Mid_CAD_entity.Add(blrf);
  18.                                 Mid_Space.Add(lay.LayoutName);
  19.                             }
  20.                             var varpt = from pt in Mid_CAD_entity orderby -pt.Position.Y, pt.Position.X select pt;
  21.                             CAD_entity = varpt.ToList<BlockReference>();
  22.                         }
  23.                     }
复制代码
发表于 2015-3-18 17:52 | 显示全部楼层
最后崩溃可能是文档锁的原因?
立刻崩溃应该是空值的引用
 楼主| 发表于 2015-3-20 16:25 | 显示全部楼层
雪山飞狐_lzh 发表于 2015-3-18 17:52
最后崩溃可能是文档锁的原因?
立刻崩溃应该是空值的引用

按道理来讲,如果到达某一文档崩溃的话,下次到达该文档依然会崩溃。可我这个程序竟然是随机的。并且不对崩溃界面响应的话程序还能正常处理。完全被搞蒙了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-16 02:45 , Processed in 0.162463 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表