【问题原因】客户其实是想问怎样使用.Net组件将GDB文件导入到PostGIS数据库型数据源中。
【解决办法】代码如下:
//导入GDB
DatasourceConnectionInfo datasourceConnectionInfo = new DatasourceConnectionInfo();
datasourceConnectionInfo.EngineType = EngineType.PGGIS;
datasourceConnectionInfo.Server = "172.16.12.186:5432";
datasourceConnectionInfo.Database = "tt";
datasourceConnectionInfo.User = "postgres";
datasourceConnectionInfo.Password = "123654";
datasourceConnectionInfo.Alias = "tt";
Datasource datasource = workspace.Datasources.Open(datasourceConnectionInfo);
ImportSettingFileGDBVector importManager = new ImportSettingFileGDBVector();
importManager.SourceFilePath = @"E:/发布服务/电话测试/新建文件地理数据库/新建文件地理数据库.gdb";
importManager.TargetDatasourceConnectionInfo = datasourceConnectionInfo;
importManager.ImportMode = ImportMode.Append;
importManager.TargetEncodeType = EncodeType.None;
importManager.IsAttributeIgnored = true;
importManager.IsImportEmptyDataset = true;
importManager.SourceFileCharset = Charset.UTF8;
importManager.TargetEncodeType = EncodeType.None;
DataImport dataImport = new DataImport();
dataImport.ImportSettings.Add(importManager);
var importResult = dataImport.Run();
foreach (var importSetting in importResult.SucceedSettings)
{
Console.WriteLine(importSetting.TargetDatasetName + "导入成功");
}