⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clsouttogdb.cs

📁 ESRI scheme 文件投影修改
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.Text;

using ESRI.ArcGIS.Geodatabase;
using ESRI.ArcGIS.esriSystem;
using ESRI.ArcGIS.DataSourcesGDB;
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.GeoDatabaseDistributed;
namespace ChangeXMLPrj
{
    public class ClsOutToGDB
    {

        public void CheckInGDB()
        {
            IWorkspaceFactory m_workF = new AccessWorkspaceFactoryClass();
            IWorkspaceName pdes = null; //m_workF.Create(@"E:\", "ChildGDB3", null, 0);

            IPropertySet pps=new PropertySetClass();

            pps.SetProperty("Server", "tomato853a577c");//服务器
            pps.SetProperty("Instance", "5151") ;//实例
            pps.SetProperty("user", "sde");// SDE数据表空间的用户名
            pps.SetProperty("password", "sde");//
            //pps.SetProperty("version", "sde.DEFAULT") ;//默认版本
            IWorkspaceFactory pwww = new  SdeWorkspaceFactoryClass();
            IWorkspace pq= pwww.Open(pps, 0);
            pdes = (pq as IDataset).FullName as IWorkspaceName  ;





            IWorkspaceFactory pwksf = new AccessWorkspaceFactoryClass();
            IWorkspace pwks= pwksf.OpenFromFile("D:\\reuse.mdb", 0);
            IWorkspaceName psrc=(pwks as IDataset).FullName as IWorkspaceName;
            ICheckIn pcin = new CheckInClass();
            pcin.CheckInFromGDB(pdes, "ad", psrc, false , false);
        }

        public void CheckOutRepia()
        {
            IWorkspaceName  childWorkspace_name = null;
            IWorkspaceName parentWorkspace_name = null;
            IReplicaDescription replica_des = new ReplicaDescriptionClass();
            IReplica m_replica = new ReplicaClass();
            IFeature m_feature = null;

            ////IDataset m_dataset = m_feature as IDataset;
            //IDataset m_dataset = m_feature as IDataset;
           
            //    IFeatureClassName m_featureName = m_dataset.FullName as IFeatureClassName;
            //    IWorkspace parentWorkspace = m_dataset.Workspace;
            //    parentWorkspace_name = (parentWorkspace as IDataset).FullName as IWorkspaceName;


            #region hata
            IWorkspaceFactory pwksf = new AccessWorkspaceFactoryClass();
            IWorkspace pwks= pwksf.OpenFromFile("D:\\reuse.mdb", 0);
            IEnumDataset pedt= pwks.get_Datasets(esriDatasetType.esriDTAny);
            pedt.Reset();
            IDataset pdt = pedt.Next();
            #endregion
            //创建那个replica description,m_featureName是当前的featureclass的fullname
                IEnumName enumname = new NamesEnumeratorClass();
                IEnumNameEdit enumname_edit = enumname as IEnumNameEdit;
                while (pdt != null)
                {
                    enumname_edit.Add(pdt.FullName);
                    pdt = pedt.Next();
                }
                //enumname = enumname_edit as IEnumName;
                

                IWorkspaceFactory m_workF = new AccessWorkspaceFactoryClass();
                childWorkspace_name = m_workF.Create(@"E:\", "ChildGDB3",null, 0);
                replica_des.Init(enumname, childWorkspace_name, false, esriDataExtractionType.esriDataCheckOut);
                replica_des.ReplicaModelType = esriReplicaModelType.esriModelTypeFullGeodatabase;
              

                parentWorkspace_name = (pwks as IDataset).FullName as IWorkspaceName ;
                IReplicaEdit m_replica_edit = m_replica as IReplicaEdit;
                m_replica_edit.ConnectionInfo = parentWorkspace_name;
                m_replica_edit.Description = replica_des;
                m_replica_edit.Name = "myCheckout_15";
                m_replica = m_replica_edit as IReplica;
                
                ICheckOut m_checkOut = new CheckOutClass();
                //m_checkOut.CheckOutData(replica_des, false, "ChildGDB");
                m_checkOut.CheckOutData(replica_des,false  , "myCheckout");
               
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -