经过九节课程的学习,从Addin程序框架的搭建到案例实战,想必您已经基本掌握了MicroStation二次开发技术。但是在面对日常工作所提出来的需求时,仅通过基础系列直播课程的学习往往并不能完全囊括所有的二次开发场景,这个时候我们便需要根据我们的问题去获得相应的解决方法。以下是笔者根据自身学习MicroStation二次开发的经验总结出来的问题解决方法,希望对您日后快速获得问题答案有所帮助。
论坛
该方法主要用于我们面对一个**从未做过的需求不知如何下手**时,此时踩着别人的足迹过河往往是最行之有效的。论坛中拥有海量的问题与对应的解决方法,您可以通过搜索您问题的关键字进行模糊搜索,看看论坛中有没有与您问题类似的帖子。一般来说帖子中会附有提问者或回答者给出的代码示例,您可以根据说明和代码改写为您所需要的形式进行个人代码的编写。如果论坛中没有相关的帖子,您也可以将您目前遇到的问题进行陈述,会有技术人员为您提供解答。<br />[中国优先社区](https://www.bentley.com/chinafirst)<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/21640708/1647572092985-df03987e-49b5-4beb-b74a-cee1a0c204d0.png#clientId=u6ad0aee0-6613-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=725&id=ue85dfac2&margin=%5Bobject%20Object%5D&name=image.png&originHeight=906&originWidth=1878&originalType=binary&ratio=1&rotation=0&showTitle=false&size=186628&status=done&style=none&taskId=u78265ab8-d8f3-4a84-bd3f-17772ef02d2&title=&width=1502.4)<br />**图1 论坛页面**
语雀文档
该方法主要用于获取**具体类或方法的参数说明及使用案例**。在语雀文章中,我们会使用面向对象的方法对其进行归类,在文章中对其中所有的类或方法的**参数进行说明**,并提供案例演示,每一个案例都可以**独立运行**,同时**附加注释说明**,帮助您更加深刻的了解其使用方法。目前该知识库尚处于持续编写阶段,后续我们会相继补充完整Element,Geometry,DgnModel,DgnFile,ViewPort等常用的API说明文章,敬请期待。<br />[MicroStation 开发平台](https://www.yuque.com/books/share/db21acaf-47fc-4343-99cc-0a46b9be93c0?#) <br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/21640708/1647574748793-94e4edea-976b-402e-976a-740230a7c476.png#clientId=u6ad0aee0-6613-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=722&id=u060d8b8c&margin=%5Bobject%20Object%5D&name=image.png&originHeight=903&originWidth=1493&originalType=binary&ratio=1&rotation=0&showTitle=false&size=176892&status=done&style=none&taskId=u46987110-56c6-4759-b4cf-caaa1cfcfc0&title=&width=1194.4)<br />**图2 语雀文档页面**
帮助文档
该方法主要用于**部分场景下类或方法的使用案例**与**具体类或方法的定义说明获取**。在我们安装SDK之后,在SDK安装路径中Documentation和examples这两个文件夹中的内容比较重要。<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/21640708/1647572482238-48d4143a-d09a-40bc-bd84-98d4d1981685.png#clientId=u6ad0aee0-6613-4&crop=0&crop=0.0102&crop=1&crop=1&from=paste&height=593&id=u09509e8a&margin=%5Bobject%20Object%5D&name=image.png&originHeight=742&originWidth=1408&originalType=binary&ratio=1&rotation=0&showTitle=false&size=81823&status=done&style=none&taskId=ucd86aa10-6967-4d4b-8f89-53d51fc057a&title=&width=1126)<br />**图3 SDK文件夹**<br /> Documentation文件夹下拥有面向不同方向的帮助文档,对C#的编程而言,我们需要后缀为**NET**的帮助文件中获取信息。它的优势为文档中囊括MicroStation中所有的API,而劣势在于没有应用该方法的案例,同时部分方法中的变量没有解释,并且都是英文,理解概念时较为困难。<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/21640708/1647572593073-60282108-2253-496f-9157-b26aa0e482dd.png#clientId=u6ad0aee0-6613-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=593&id=uc5baffa8&margin=%5Bobject%20Object%5D&name=image.png&originHeight=741&originWidth=1405&originalType=binary&ratio=1&rotation=0&showTitle=false&size=94657&status=done&style=none&taskId=uf6e5797f-5bf1-481c-bb46-87abc653288&title=&width=1124)<br />**图4 帮助文档文件夹**<br /> 打开帮助文档后,我们可以在索引界面输入我们需要获得类或方法的名称,搜索完成后在下方会显示相应的索引信息,此时我们可以点击说明获得对应的信息。<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/21640708/1647574139922-4e74ce0e-5015-492f-9fdb-27bd66316bad.png#clientId=u6ad0aee0-6613-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=508&id=u332e654f&margin=%5Bobject%20Object%5D&name=image.png&originHeight=635&originWidth=1113&originalType=binary&ratio=1&rotation=0&showTitle=false&size=67205&status=done&style=none&taskId=ufed30d54-ee8e-4c19-93bf-2e68db2a0c3&title=&width=890.4)<br />**图5 案例文件夹**<br /> examples文件夹中拥有使用C#和C++编写的案例,通过一个个小案例的方式介绍API的使用方法。这里建议各位下载Sublime这个软件用于代码的查看,它可以将整个文件夹内的所有代码文件进行展示,同时也方便我们在使用方法想查看其具体用法时可以使用搜索方法关键词的方法在整个案例文件夹内进行查找。它具有的优势为可以在案例中方法的具体用法,但是劣势为案例内容较为杂乱,主题不够单一,同时涉及到的方法不全,有一些案例因为框架或方法变更无法编译成功。<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/21640708/1647582915839-5981a6aa-5330-4b05-a3a4-15743607ef7d.png#clientId=u6ad0aee0-6613-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=85&id=ufac87150&margin=%5Bobject%20Object%5D&name=image.png&originHeight=106&originWidth=94&originalType=binary&ratio=1&rotation=0&showTitle=false&size=3954&status=done&style=none&taskId=u0929ed8f-870b-484e-9ca6-c4949db5292&title=&width=75.2)<br />**图6 Sublime**<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/21640708/1647582982655-017fecfe-acc8-47ed-8127-0bef55631b89.png#clientId=u6ad0aee0-6613-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=802&id=uc9d6aa7c&margin=%5Bobject%20Object%5D&name=image.png&originHeight=1002&originWidth=1920&originalType=binary&ratio=1&rotation=0&showTitle=false&size=190483&status=done&style=none&taskId=u4be3ba68-7d27-4557-abfe-4524ae20f8e&title=&width=1536)<br />**图7 Sublime界面**
Bentley产品研发生态群
您可以将您的问题发到群中,会有用户和Bentley技术人员给您提供解答。但是当您的问题较为复杂,一两句话无法完全解释的话,为了更高质量的给您满意的答复,这里也推荐您将问题发布到论坛上。因为目前群中人数已超过380人,您可以添加下方的微信号,并备注MicroStation进群,我们会将您拉入群中。<br />![image.png](https://cdn.nlark.com/yuque/0/2022/png/21640708/1647583269733-34bf7bd4-0c14-4738-b0b3-bf6807062186.png#clientId=u6ad0aee0-6613-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=257&id=u469099db&margin=%5Bobject%20Object%5D&name=image.png&originHeight=321&originWidth=320&originalType=binary&ratio=1&rotation=0&showTitle=false&size=54701&status=done&style=none&taskId=u5a9f1b71-00b3-4224-a78c-738c5095870&title=&width=256)