zoukankan      html  css  js  c++  java
  • 打开数据库的另一种方式

    1.IName(名称对象)介绍

     
    数据集对象可以分为两大类,一种是Table,我们无法将Table存储在要素数据集中(可以尝试下),一种是Geodataset,这个是要素类的容器。数据集对象有一个很重要的属性,就是这个Fullname,用这个可
    以返回和数据集相关的名称对象,而这个名称对象有一个很重要的方法Open(),这个可以获取和这个名称对象相关的对象(内存中的),Open()方法的返回值是object,所以用Open方法的时候,我们必须
    心里清楚,自己到底是要得到那个对象,然后QI到我们要的对象上。

    IName对象是一个代表性对象。通过使用IName对象,可以访问它所代表的对象的一些基本属性,而不用将整个对象调入内存。我们用IWorkspace获得一个Workspace,那可是会调入内存的,而IWorkspaceNa
    则不会,除非你用了IWorkspaceName.open.在我看来,那些继承IName的接口,在数据转换和叠加分析时候经常要用到这个。
    IName 是一个抽象类,拥有很多子类,借助它的子类IWorkspaceName也可以打开数据库。打开一个数据库我们要指定它的类型,是个人数据库,还是文件数据库。IWorkspaceName的
    IWorkspaceName.WorkspaceFactoryProgID 属性用于完成这一操作,这个属性是一个枚举的常量类型
      esriDataSourcesGDB.AccessWorkspaceFactory 
      esriDataSourcesFile.ArcInfoWorkspaceFactory 
      esriDataSourcesFile.C adWorkspaceFactory 
      esriDataSourcesGDB.FileGDBWorkspaceFactory 
      esriDataSourcesOleDB.OLEDBWorkspaceFactory 
      esriDataSourcesFile.PC C overageWorkspaceFactory 
      esriDataSourcesRaster.RasterWorkspaceFactory 
      esriDataSourcesGDB.SdeWorkspaceFactory 
      esriDataSourcesFile.ShapefileWorkspaceFactory 
      esriDataSourcesOleDB.TextFileWorkspaceFactory 
      esriDataSourcesFile.TinWorkspaceFactory 

      esriDataSourcesFile.VpfWorkspaceFactory 

       public IWorkspace Get_Workspace(string _pWorkspacePath)
        {
            
            IWorkspaceName pWorkspaceName = new WorkspaceNameClass();
     
            pWorkspaceName.WorkspaceFactoryProgID = "esriDataSourcesGDB.AccessWorkspaceFactory";
     
            pWorkspaceName.PathName = _pWorkspacePath;
            
            IName pName = pWorkspaceName as IName;
     
     
            IWorkspace pWorkspace = pName.Open() as IWorkspace;
     
            return pWorkspace;
     
        }

  • 相关阅读:
    ExecuteScalar requires the command to have a transaction when the connection assigned to the command is in a pending
    如何从vss中分离程序
    String or binary data would be truncated
    the pop3 service failed to retrieve authentication type and cannot continue
    The POP3 service failed to start because
    IIS Error he system cannot find the file specified _找不到页面
    pku2575Jolly Jumpers
    pku2940Wine Trading in Gergovia
    pku3219二项式系数
    pku1029false coin
  • 原文地址:https://www.cnblogs.com/qiushuixizhao/p/3242508.html
Copyright © 2011-2022 走看看