使用ArcObjects插件导入。lyrx文件到ArcMap中

1763
2
05-13-2021 06:26 am
通过 匿名用户
不适用

我正在为我的组织维护一个遗留的外接程序(用c#编写),目前通过查询数据库表中的层名(通过调用API)工作,然后将层文件从网络驱动器导入到ArcMap中。图层文件由其他办公室的用户以.lyr格式提交到我的办公室。

我们正在迁移到ArcGIS Pro 2。X,并且需要使用.lyrx文件。我们将外接程序迁移到ArcGIS Pro SDK, ArcMap外接程序和ArcGIS Pro外接程序都引用了相同的。lyr文件库,这是因为。lyr文件可以加载到Pro中。

但是,一些用户仍然需要ArcMap,并且ArcMap外接程序目前不能引用.lyrx文件。这是一个问题,因为.lyrx文件与ArcMap不向后兼容,用户提交层文件(理论上)将无法访问ArcMap,因此他们不能创建.lyr文件。

tl;dr:我需要一个ArcObjects插件,能够拉。lyrx文件到ArcMap,我不知道如何做到这一点。

标签(4)
0荣誉
2回答
KirkKuykendall1
临时贡献者III

上次我检查的时候,你可以添加对ArcGIS的引用。来自32位项目的核心程序集(例如arcmap外接程序项目)。但不确定它是否与. net框架版本兼容。

然后,您应该能够将.lyrx反序列化为CIMLayer。在此之后,您可以编写扩展方法,如. toarcobjects(),将CIMLayer转换为illayer。

通过 匿名用户
不适用

谢谢,我会试试的!. net框架版本可能有点麻烦,但我还是会尝试一下。

0荣誉