数据源连接信息类。

包括了进行数据源连接的所有信息,如所要连接的服务器名称,数据库名称、用户名、密码等。当保存工作空间时,工作空间中的数据源的连接信息都将存储到工作空间文件中。

命名空间:  SuperMap.Data
程序集:  SuperMap.Data (in SuperMap.Data)
版本: dll

语法

C#
public class DatasourceConnectionInfo : IDisposable

备注

对于不同类型的数据源,其连接信息有所区别。在使用该类所包含的成员时,请注意该成员所适用的数据源类型。

对于从数据源对象中获得的数据源连接信息对象,仅IsAutoConnect属性可被修改,其它内容均不可被修改。

对于用户创建的数据源连接信息对象,其内容均可以修改。

示例

以下代码示范如何打开不同引擎类型的数据源。

CopyC#
public void DatasourceConnectionInfoSample(EngineType datasourceType)
{
    // 定义工作空间
    Workspace workspace = new Workspace();

    // 定义数据源连接信息,假设以下所有数据源设置都存在
    DatasourceConnectionInfo datasourceConnectInfo = new DatasourceConnectionInfo();

    // 根据不同引擎类型的数据源进行相应连接信息的读取
    switch (datasourceType) 
    {
    // SQLPlus 数据源(必须设置 Driver 属性)
    case EngineType.SQLPlus:
        // 设置 SQL 数据源连接需要的参数
        datasourceConnectInfo.EngineType = EngineType.SQLPlus;
        datasourceConnectInfo.Server = "Server";
        datasourceConnectInfo.Database = "Database";
        datasourceConnectInfo.User = "User";
        datasourceConnectInfo.Password = "password";
        datasourceConnectInfo.Alias = "SQL";
        datasourceConnectInfo.Driver = "SQL Server";
        break;

    // OraclePlus 数据源
    case EngineType.OraclePlus:
        // 设置 Oracle 数据源连接所需要的参数
        datasourceConnectInfo.EngineType = EngineType.OraclePlus;
        datasourceConnectInfo.Server = "Server";
        datasourceConnectInfo.Database = "Database";
        datasourceConnectInfo.User = "User";
        datasourceConnectInfo.Password = "password";
        datasourceConnectInfo.Alias = "ORACLE";
        break;

  // PostgreSQL 数据源
  case EngineType.PostgreSQL:
      //设置 PostgreSQL 数据源连接所需要的参数
      datasourceConnectInfo.EngineType = EngineType.PostgreSQL;
      datasourceConnectInfo.Server = "Server";
      datasourceConnectInfo.Database = "Database";
      datasourceConnectInfo.User = "User";
      datasourceConnectInfo.Password = "password";
      datasourceConnectInfo.Alias = "PostgreSQL";
      break;
      
    // DB2 数据源
  case EngineType.DB2:
      //设置 DB2 数据源连接所需要的参数
      datasourceConnectInfo.EngineType = EngineType.DB2;
      datasourceConnectInfo.Database = "Database";
      datasourceConnectInfo.User = "User";
      datasourceConnectInfo.Password = "password";
      datasourceConnectInfo.Alias = "DB2";
      break;
      
   // Kingbase 数据源
   case EngineType.Kingbase:
        //设置 Kingbase 数据源连接所需要的参数
        datasourceConnectInfo.EngineType = EngineType.Kingbase;
        datasourceConnectInfo.Server = "Server";
        datasourceConnectInfo.Database = "Database";
        datasourceConnectInfo.User = "User";
        datasourceConnectInfo.Password = "password";
        datasourceConnectInfo.Alias = "Kingbase";
        break;
      
    // GoogleMaps 数据源
    case EngineType.GoogleMaps:
        //设置 GoogleMaps 数据源连接所需要的参数
        datasourceConnectInfo.EngineType = EngineType.GoogleMaps;
        datasourceConnectInfo.Password = "Key";
        datasourceConnectInfo.Alias = "GoogleMap";
        break;

    // SuperMapCloud 数据源
    case EngineType.SuperMapCloud:
        //设置 SuperMapCloud 数据源连接所需要的参数
        datasourceConnectInfo.EngineType = EngineType.SuperMapCloud;
        datasourceConnectInfo.Database = "D:/Cache";
        datasourceConnectInfo.Alias = "SuperMapCloud";
        break;

    // WMTS 服务
    case EngineType.OGC:
        // 设置连接 iServer 所发布的 WMTS 服务所需要的参数
        datasourceConnectInfo.EngineType = EngineType.OGC;
        datasourceConnectInfo.Server = "http://localhost:8090/iserver/services/map-china400/wmts100";
        datasourceConnectInfo.Driver = "WMTS"
        datasourceConnectInfo.Database = "D:/Cache";
        datasourceConnectInfo.Alias = "WMTS";
        break;

    // 其他类型数据源
    default:
        break;
    }

    // 打开数据源
    Datasource datasource = workspace.Datasources.Open(datasourceConnectInfo);
    if (datasource == null)
    {
        Console.WriteLine("打开数据源失败");
        return;
    } 
    else 
    {
        Console.WriteLine("数据源打开成功!");
    }

    // 释放工作空间资源
    workspace.Dispose();
}

继承层次

System..::.Object
  SuperMap.Data..::.DatasourceConnectionInfo

请参见