ArcGIS Pro SDK (六)CoreHost

核心主机

环境:Visual Studio 2022 + .NET6 + ArcGIS Pro SDK 3.0

1 初始化核心主机

csharp 复制代码
using ArcGIS.Core.Data;
//必须引用ArcGIS.CoreHost.dll
using ArcGIS.Core.Hosting;

class Program {
    //[STAThread] 必须出现在应用程序入口点上
    [STAThread]
    static void Main(string[] args) 
    {
        //必须在构造任何 ArcGIS.Core 对象之前调用 Host.Initialize 
        try {
            Host.Initialize();
        }
        catch (Exception e) {
            //错误(缺少安装、没有许可证、64位不匹配等)
            Console.WriteLine(string.Format("Initialization failed: {0}",e.Message));
            return;
        }

        //执行到这,ArcGIS.Core已经初始化成功
        Geodatabase gdb = new Geodatabase(new FileGeodatabaseConnectionPath(new Uri(@"C:\Data\SDK\GDB\MySampleData.gdb")));
        IReadOnlyList<TableDefinition> definitions = gdb.GetDefinitions<FeatureClassDefinition>();

        foreach (var fdsDef in definitions) {
            Console.WriteLine(TableString(fdsDef as TableDefinition));
        }
        Console.Read();
    }

    private static string TableString(TableDefinition table) 
    {
        string alias = table.GetAliasName();
        string name = table.GetName();
        return string.Format("{0} ({1})", alias.Length > 0 ? alias : name, name);
    }
}
相关推荐
智航GIS1 小时前
ArcGIS大师之路500技---078补零
arcgis
Popeye-lxw1 小时前
由罗技 K380 键盘 FN 键模式切换引发的血案
c#
FL16238631291 小时前
C# OpenCvSharp 基于霍夫变换直线检测的文本图像倾斜校正文本图像倾斜校
开发语言·c#
aini_lovee3 小时前
C# 快递单打印系统(万能套打系统)
开发语言·c#
白菜上路3 小时前
C# Serilog.AspNetCore基本使用
c#·serilog
小白不白1113 小时前
C# WinForm 与 VP 二次开发
开发语言·c#
SunnyDays10114 小时前
如何使用 C# 自动调整 Excel 行高和列宽
开发语言·c#·excel
itgather5 小时前
OfficeExcel — Word / Excel DLL 验证台功能介绍
c#·word·excel
云中小生5 小时前
Scrutor:.NET 依赖注入自动化的优雅实现
c#·.net
郝亚军5 小时前
Visual Studio 2022项目中的.sln是什么?
c++·c#·visual studio