将 GeoDB 连接到 ASP.Net Web 应用程序
Posted
技术标签:
【中文标题】将 GeoDB 连接到 ASP.Net Web 应用程序【英文标题】:Connection GeoDB to ASP.Net web application 【发布时间】:2011-08-16 07:08:50 【问题描述】:我有一个扩展名为 .gdb 的 GeoDB。有没有人尝试过使用 C# 和 ArcGIS SDK 连接 GeoDB?
【问题讨论】:
当你说“GeoDB”时,你的意思是一个普通的文件地理数据库,对吧? 【参考方案1】:下面的 ArcObjects 代码要求您已签出许可证。 (如何完成取决于您安装的 ArcGIS 版本。例如,对于 ArcGIS 9.3.1,调用 IAoInitialize.Initialize
就足够了。在 ArcGIS 10 中,您还需要首先通过调用绑定到产品ESRI.ArcGIS.RuntimeManager.BindLicense
.)
using ESRI.ArcGIS.Geodatabase;
using ESRI.ArcGIS.DataSourcesGDB;
…
IWorkspaceFactory wsFactory = new FileGDBWorkspaceFactory(); // (see P.S. below)
IWorkspace ws = wsFactory.OpenFromFile(@"\path\to\your\file.gdb", hWnd);
然后,您可以通过将ws
转换为IFeatureWorkspace
并使用该接口的方法(例如OpenTable
、OpenFeatureClass
等)打开文件地理数据库中的要素类、表等。
P.S.: ESRI 实际上建议使用
Activator.CreateInstance
而不是new
创建工作区工厂(作为单例对象):Type wsFactoryType = Type.GetTypeFromProgID("esriDataSourcesGDB.FileGDBWorkspaceFactory"); IWorkspaceFactory wsFactory = (IWorkspaceFactory)Activator.CreateInstance(wsFactoryType); …
(我之前没有提到这一点,因为它给简单的代码示例增加了一些复杂性。)
【讨论】:
以上是关于将 GeoDB 连接到 ASP.Net Web 应用程序的主要内容,如果未能解决你的问题,请参考以下文章
尝试将 ASP.NET CORE 2 Web API 应用程序连接到 WCF 服务
将托管在 AWS EC2 上的 Asp.net Web api 连接到 AWS API Gateway
无法使用 AFNetworking 将 iOS 连接到 asp.net webservices
ASP.NET 5 MVC:无法连接到 Web 服务器“IIS Express”
连接到 MS Access 的 Mono 和 ASP.NET Web 应用程序
如何将 Openoffice calc excel 连接到 sql server 而不是 asp.net 中的 oledb excel 连接