欢迎您来到GIS动力

加入收藏 免费注册 用户登陆 帮助中心
首页 新闻动态 技术专栏 银杏树下 学习考研 软件下载 求职招聘 许愿瓶 节日祝福 用户中心 精彩推荐 资源搜索 地图
专栏导航: AO开发 | SO开发 | ArcGIS桌面 | 超图桌面 | 开发语言 | 数据库 | WebGIS | 银杏文学 | 研究生考题 | FreeMap FreeTalk
   您现在位于: 首页技术专栏ArcGIS应用与开发AO开发 → 正文
基于AE的个人地理数据库(mdb格式)导入到企业级数据库(sde数据库中)中(C#)
07-10-18 09:32:40 作者:GIS云中鹤 出处:
个人地理数据库有数据集,导入到企业级数据库后没有数据集,只有要素类。

private void btnPGD2EGD_Click(object sender, EventArgs e)
        {
            try
            {
                string pWorkspaceName = strName;
                string sdeUser = pSDEwsp.ConnectionProperties.GetProperty("USER").ToString();
                IWorkspaceFactory pMDBwspf = new AccessWorkspaceFactoryClass();
                pMDBwsp = pMDBwspf.OpenFromFile(pWorkspaceName, 0);
                Cursor = Cursors.WaitCursor;
                if (pSDEwsp != null)
                {
                    //progressBar.Visible = true;
                    DataVonverter(ref pMDBwsp, ref pSDEwsp, sdeUser);//数据导入
                    progressBar.Visible = false;
                }

                Cursor = Cursors.Default;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }

            MessageBox.Show("mdb数据上传SDE库成功!", "数据导入", MessageBoxButtons.OK, MessageBoxIcon.Information);
            this.Close();
           
        }


  public void DataVonverter(ref IWorkspace FromWorkspace, ref IWorkspace ToWorkspace,string SDEUser)
        {
            if (SDEUser == "") return;
            IFeatureWorkspace pOutFeatureWorkspace;
            IFeatureWorkspace pInFeatureWorkspace;
            IFeatureClass pFeatureClass;
            IFeatureClass pOutFeatureClass;
            IWorkspace2 pWorkspace2;
            IEnumDataset pEnumDataset;
            IDataset pOutDataset;

            IFeatureDataset pOutFeatureDataset;
            IEnumFeatureClass pEnumFeatureClass;
            IFeatureClassContainer pFeatureclassContainer;

            pOutFeatureWorkspace = (IFeatureWorkspace)ToWorkspace;
            pInFeatureWorkspace = (IFeatureWorkspace)FromWorkspace;
            pWorkspace2 = (IWorkspace2)ToWorkspace;

            pEnumDataset = (IEnumDataset)FromWorkspace.get_Datasets(esriDatasetType.esriDTFeatureDataset);//获得MDB端的所有数据集
            pOutDataset = (IDataset)pEnumDataset.Next();

            while (pOutDataset != null)//遍历数据集
            {
                pOutFeatureDataset = (IFeatureDataset)pOutDataset;
                if (pOutFeatureDataset != null)
                {
                    pFeatureclassContainer = (IFeatureClassContainer)pOutFeatureDataset;
                    pEnumFeatureClass = (IEnumFeatureClass)pFeatureclassContainer.Classes;
                    pFeatureClass = (IFeatureClass)pEnumFeatureClass.Next();
                    while (pFeatureClass != null)//在每一个数据集中遍历数据层IFeatureClass
                    {
                        if (!pFeatureClass.AliasName.Contains("UnClassfied"))
                        {
                            if (pWorkspace2.get_NameExists(esriDatasetType.esriDTFeatureClass, SDEUser + "." + pFeatureClass.AliasName))
                            {
                                pOutFeatureClass = pOutFeatureWorkspace.OpenFeatureClass(SDEUser + "." + pFeatureClass.AliasName);
                                fc2fc(ref pFeatureClass, ref pOutFeatureClass);
                            }
                            else
                            {
                                fc2fc(ref pFeatureClass, ref ToWorkspace);
                            }
                        }
                        pFeatureClass = (IFeatureClass)pEnumFeatureClass.Next();
                    }
                }
                pOutDataset = (IDataset)pEnumDataset.Next();
    

9 7 3 1 2 4 8 :

(本文已被浏览 次)
发布人:admin
推荐给好友:发送给好友
上篇新闻:
下篇新闻:
相关评论
发表我的评论
  • 尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法;
  • 本站有权保留或删除您发表的任何评论内容;
  •   相关文章  

    关于我们友情链接 ┋ 与我在线 ┋ 管理 ┋ TOP
     
    网站当前版本:GisPower CMS V3.0
    『GIS 动力』- http://www.gispower.org/
    联系我们:webmaster#gispower.org
    Copyright (c) 2003-2007 GisPOwer.Org. All Rights Reserved.
     

                   滇ICP备05006901号