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);
    }
}
相关推荐
方程式sunny2 分钟前
C#的五大设计原则-solid原则
开发语言·c#
※※冰馨※※19 分钟前
Visual Studo 2019 无法启动
开发语言·c#
大浪淘沙胡25 分钟前
ListBox自动滚动并限制显示条数
c#
液态不合群28 分钟前
在C#中使用RabbitMQ做个简单的发送邮件小项目 _
c#·rabbitmq·ruby
WineMonk1 小时前
ArcGIS Pro SDK (七)编辑 10 捕捉
arcgis·c#·gis·arcgis pro sdk
V言微语1 小时前
2.2.4 C#中显示控件BDPictureBox 的实现----ROI交互
开发语言·c#·交互
danielli10 小时前
C# Modbus设备信息加载的实现方式(1)
java·windows·c#
那个那个鱼11 小时前
C#面:举列 a=10,b=15,在不用第三方变量的前提下,把a,b的值互换
开发语言·c#·.net
类人_猿11 小时前
C#中类的反射以及调用小妙招
c#·反射·代码优化·getmethod·type.gettype
martian66513 小时前
学懂C#编程:常用高级技术——学会C#多线程开发(一)
开发语言·c#·多线程