Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#.NET Autocad 2021 API:访问给定块表中的特定块表记录?_C#_.net_Autocad_Autocad Plugin - Fatal编程技术网

C#.NET Autocad 2021 API:访问给定块表中的特定块表记录?

C#.NET Autocad 2021 API:访问给定块表中的特定块表记录?,c#,.net,autocad,autocad-plugin,C#,.net,Autocad,Autocad Plugin,我正在寻找有关BlockTable类的详细信息的建议。我知道,尽管您可以为blocktable包含的所有blocktablerecords获取枚举器,但我似乎找不到更有效的方法来访问特定BlockTableRecord的ObjectID。我知道计算机可以获取这些信息。。。无论如何,我无法想象BlockTable.Has()函数在没有它的情况下还能工作。我也检查了文档,但实际上它没有在任何地方列出BlockTable类的函数或属性:/ 我当前的代码依赖于用户输入的字符串来检索块,当插入BlockT

我正在寻找有关BlockTable类的详细信息的建议。我知道,尽管您可以为blocktable包含的所有blocktablerecords获取枚举器,但我似乎找不到更有效的方法来访问特定BlockTableRecord的ObjectID。我知道计算机可以获取这些信息。。。无论如何,我无法想象BlockTable.Has()函数在没有它的情况下还能工作。我也检查了文档,但实际上它没有在任何地方列出BlockTable类的函数或属性:/

我当前的代码依赖于用户输入的字符串来检索块,当插入BlockTable.Has()时,它会成功返回正确的bool结果

感谢您的帮助!
Tyler

BlockTable
包装器实现了一个索引器,可以与
字符串或
ObjectId
一起使用。i、 e.
myBlkTable[“区块名”]

注意:不能保证这是“有效的”,可能只是枚举引擎盖下的数组。您将需要运行一些时间测试,以查看什么更有效

问问自己,你正在寻找的微优化是否值得你花时间在上面,这总是一件好事。听起来您只是在处理一个用户命令,即使有一个高效的查找,这会对用户体验产生任何影响吗?答案可能是否定的。只有在循环中重复查询大量集合时,这种事情才会变得重要