Arcgis for Server 的 SOE 开发环境搭建

2023-11-06 00:30

本文主要是介绍Arcgis for Server 的 SOE 开发环境搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

参考文档:https://blog.csdn.net/linghe301/article/details/38434469

 

SOE开发环境:

ArcObject10.2(在ArcGIS Desktop 包装包中)、VS2012、 Arcgsis 10.2 for Server、ArcSDE 10.2

 

  1. 安装Arcgis Object 10.2 (若已安装请跳过)

如果不知是否安装,使用 VS2012 新建项目,查看已安装的模板中是否有Arcgis 模板:如图

如果没有:找到 ArcGIS_Desktop 安装包

解压并找到SDK_dotnet:

并安装

 

2. SOE部署

生成了相关的SOE版本,在ArcGIS 10.2版本,支持了影像服务的扩展,所以在我们需要在模板里面输入支持地图服务还是影像服务。如下所示“MapServer”。注意:一定要填,不然扩展添加报错:Failed to register extensions in 'RestSOETest.soe'. Unsupported service type 'null'.

 [ServerObjectExtension("MapServer",//use "MapServer" if SOE extends a Map service and "ImageServer" if it extends an Image service.AllCapabilities = "",DefaultCapabilities = "",Description = "",DisplayName = "RestSOETest",Properties = "",SupportsREST = true,SupportsSOAP = false)]

我们需要在初始化函数Init里面添加如下代码,才能进入调试状态

 public void Init(IServerObjectHelper pSOH){//生命周期开始时调试System.Diagnostics.Debugger.Launch();serverObjectHelper = pSOH;}

 

编译出现问题:未能从程序集ESRI.ArcGIS.AddIns.SDK加载任务"ValidateAddInXMLTask"

未能从程序集ESRI.ArcGIS.AddIns.SDK, Version= 10.2.0.0,Culture=neutral, PublicKeyToken= 8fc3cc631e44ad86加载任务"ValidateAddInXMLTask"。未能加载文件或程序集"Microsoft. VisualStudio. Shell.9.0, Version=2.0.0.0, Culture=neutral, XXXPublicKeyToken= b03f5f7f1 1d50a3a'或它的某一个依赖项。 系统找不到指定的文件。请确认 <UsingTask>声明正确,该程序集及其所有依赖项都可用,并且该任务包含实现Microsoft. Build.Framework.ITask的公共类。

解决方案:

修改工程文件.csproj

这是由于ArcObject版本升级与模板文件不一致引起的。比较便捷的解决方式是卸载项目,打开.csproj项目文件,找到\ESRI\ESRI.ArcGIS.AddIns.Server.targets,并更改为\ESRI\ESRI.ArcGIS.AddIns.Server.11.targets,如下图所示

生成解决方案

生成解决方案,在bin目录下可以看到以.soe后缀名的文件。

PS:该.soe后缀的文件可以将.soe名称修改为.zip,那么用户可以看到相关dll以及元数据xml文件信息。

登录ArcGIS Server Manager,在IE 浏览器下 添加站点扩展: 添加生成的 RestSOETest.soe 文件

添加站点:

然后再 服务 选项中,选择已经发布的地图服务中(如: cqmap),编辑

在该服务的功能选择新的RestSOETest扩展,然后保存和重新启动服务即可

 

 

这篇关于Arcgis for Server 的 SOE 开发环境搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/353418

相关文章

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

SQLite3 在嵌入式C环境中存储音频/视频文件的最优方案

《SQLite3在嵌入式C环境中存储音频/视频文件的最优方案》本文探讨了SQLite3在嵌入式C环境中存储音视频文件的优化方案,推荐采用文件路径存储结合元数据管理,兼顾效率与资源限制,小文件可使用B... 目录SQLite3 在嵌入式C环境中存储音频/视频文件的专业方案一、存储策略选择1. 直接存储 vs

SpringBoot开发中十大常见陷阱深度解析与避坑指南

《SpringBoot开发中十大常见陷阱深度解析与避坑指南》在SpringBoot的开发过程中,即使是经验丰富的开发者也难免会遇到各种棘手的问题,本文将针对SpringBoot开发中十大常见的“坑... 目录引言一、配置总出错?是不是同时用了.properties和.yml?二、换个位置配置就失效?搞清楚加

如何使用Haporxy搭建Web群集

《如何使用Haporxy搭建Web群集》Haproxy是目前比较流行的一种群集调度工具,同类群集调度工具有很多如LVS和Nginx,本案例介绍使用Haproxy及Nginx搭建一套Web群集,感兴趣的... 目录一、案例分析1.案例概述2.案例前置知识点2.1 HTTP请求2.2 负载均衡常用调度算法 2.

Python中对FFmpeg封装开发库FFmpy详解

《Python中对FFmpeg封装开发库FFmpy详解》:本文主要介绍Python中对FFmpeg封装开发库FFmpy,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、FFmpy简介与安装1.1 FFmpy概述1.2 安装方法二、FFmpy核心类与方法2.1 FF

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

python常见环境管理工具超全解析

《python常见环境管理工具超全解析》在Python开发中,管理多个项目及其依赖项通常是一个挑战,下面:本文主要介绍python常见环境管理工具的相关资料,文中通过代码介绍的非常详细,需要的朋友... 目录1. conda2. pip3. uvuv 工具自动创建和管理环境的特点4. setup.py5.

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

SQL Server数据库死锁处理超详细攻略

《SQLServer数据库死锁处理超详细攻略》SQLServer作为主流数据库管理系统,在高并发场景下可能面临死锁问题,影响系统性能和稳定性,这篇文章主要给大家介绍了关于SQLServer数据库死... 目录一、引言二、查询 Sqlserver 中造成死锁的 SPID三、用内置函数查询执行信息1. sp_w