コード例 #1
0
ファイル: Program.cs プロジェクト: zj8487/HyDM
        public static IWorkspace GetWorkspace(Hashtable pPropList, string progID)
        {
            try
            {
                IPropertySet2 propertySets = new PropertySetClass();

                foreach (string paraName in pPropList.Keys)
                {
                    propertySets.SetProperty(paraName.ToUpper(), pPropList[paraName]);
                }

                IWorkspaceFactory wsf = new ESRI.ArcGIS.DataSourcesGDB.SdeWorkspaceFactoryClass();
                return(wsf.Open(propertySets, 0));

                return((new ESRI.ArcGIS.DataSourcesGDB.SdeWorkspaceFactoryClass()).Open(propertySets, 0));

                IWorkspaceName2 workspaceName = new WorkspaceNameClass();
                workspaceName.ConnectionProperties = propertySets;
                // 类型库需要动态设置
                workspaceName.WorkspaceFactoryProgID = progID;

                IName      pName     = workspaceName as IName;
                IWorkspace workspace = pName.Open() as IWorkspace;
                //IWorkspace workspace = pName.Open() as IWorkspace;
                return(workspace);
            }
            catch (Exception ex)
            {
                MessageBox.Show("SDE连接参数不正确,请和系统管理员联系!");
                return(null);
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: hy1314200/HyDM
        public static IWorkspace GetWorkspace(Hashtable pPropList, string progID)
        {
            try
            {
                IPropertySet2 propertySets = new PropertySetClass();

                foreach (string paraName in pPropList.Keys)
                    propertySets.SetProperty(paraName.ToUpper(), pPropList[paraName]);

                IWorkspaceFactory wsf = new ESRI.ArcGIS.DataSourcesGDB.SdeWorkspaceFactoryClass();
                return wsf.Open(propertySets, 0);
                return (new ESRI.ArcGIS.DataSourcesGDB.SdeWorkspaceFactoryClass()).Open(propertySets, 0);
                IWorkspaceName2 workspaceName = new WorkspaceNameClass();
                workspaceName.ConnectionProperties = propertySets;
                // 类型库需要动态设置
                workspaceName.WorkspaceFactoryProgID = progID;

                IName pName = workspaceName as IName;
                IWorkspace workspace = pName.Open() as IWorkspace;
                //IWorkspace workspace = pName.Open() as IWorkspace;
                return workspace;
            }
            catch (Exception ex)
            {
                MessageBox.Show("SDE连接参数不正确,请和系统管理员联系!");
                return null;
            }
        }
コード例 #3
0
ファイル: SQLHelper.cs プロジェクト: tangjie1900/LeafletWeb
        //得到SDE工作空间
        public static IWorkspace OpenSDEWorkspace()
        {
            string sdeServer   = GetCenterServerSettings("ServerConfing/LocalSDEServer/Server");
            string sdeInstance = GetCenterServerSettings("ServerConfing/LocalSDEServer/Instance");
            string sdeUser     = GetCenterServerSettings("ServerConfing/LocalSDEServer/UserName");
            string sdePassword = GetCenterServerSettings("ServerConfing/LocalSDEServer/PassWord");
            string sdeVersion  = GetCenterServerSettings("ServerConfing/LocalSDEServer/Version");

            IPropertySet pPropertSet = new PropertySetClass();

            pPropertSet.SetProperty("Server", sdeServer);
            pPropertSet.SetProperty("Instance", sdeInstance);
            pPropertSet.SetProperty("user", sdeUser);
            pPropertSet.SetProperty("password", sdePassword);
            pPropertSet.SetProperty("version", sdeVersion);

            IWorkspace        pWorkspace  = null;
            IWorkspaceFactory pWorkspaceF = new ESRI.ArcGIS.DataSourcesGDB.SdeWorkspaceFactoryClass();

            try
            {
                pWorkspace = pWorkspaceF.Open(pPropertSet, 0);
            }
            catch (Exception e)
            {
                pWorkspace = null;
            }
            return(pWorkspace);
        }
コード例 #4
0
ファイル: UtilityTest.cs プロジェクト: zenwalk/umbriel
        public void FindFeatureClassTest()
        {
            ArcGISTestHelper testhelper = new ArcGISTestHelper(ESRI.ArcGIS.esriSystem.esriLicenseProductCode.esriLicenseProductCodeArcView);

            testhelper.Initialize();

            IWorkspaceFactory factory   = new ESRI.ArcGIS.DataSourcesGDB.SdeWorkspaceFactoryClass();
            IWorkspace        workspace = factory.OpenFromFile(@"C:\Documents and Settings\cum30\Application Data\ESRI\ArcCatalog\henricogisdb.DPU.DBMS.FEATURE_QAQC.sde", 0);

            string featureclassName = "MANHOLES";

            bool exactMatch = true;

            List <IFeatureClass> actual = Umbriel.ArcGIS.Geodatabase.Utility.FindFeatureClass(workspace, featureclassName, exactMatch);


            System.Diagnostics.Trace.WriteLine("FindFeatureClassTest Count=" + actual.Count.ToString());

            testhelper.Cleanup();

            Assert.AreEqual(actual.Count, 1);
        }