示例#1
0
        public void GetAccessWorkspace_Test_Success(string subDirectory, string pgdbFileName)
        {
            string temp     = System.IO.Path.Combine(_dataDirectory, subDirectory);
            string pgdbFile = System.IO.Path.Combine(temp, pgdbFileName);

            Assert.IsNotNull(GeodatabaseUtil.GetAccessWorkspace(pgdbFile), "Unable to open workspace for the '" + pgdbFile + "' personal geodatabase");
        }
示例#2
0
        public void DoesFeatureClassExist_Test(string subDirectory, string pgdbFilename, string featureclassName)
        {
            string temp = System.IO.Path.Combine(_dataDirectory, subDirectory);
            string pgdb = System.IO.Path.Combine(temp, pgdbFilename);

            IWorkspace workspace = GeodatabaseUtil.GetAccessWorkspace(pgdb);

            Assert.IsTrue(FeatureClassUtil.DoesFeatureClassExist(workspace, featureclassName, true), "Unable to open FeatureClass inside a workspace");
        }
示例#3
0
        public void TestGetAccessWorkspace(string pgdbFileName)
        {
            string pgdbFile = System.IO.Path.Combine(_dataDirectory, pgdbFileName);

            if (File.Exists(pgdbFile))
            {
                File.Delete(pgdbFile);
            }
            GeodatabaseUtil.CreatePersonalGeodatabase(pgdbFile);

            Assert.IsNotNull(GeodatabaseUtil.GetAccessWorkspace(pgdbFile), "Unable to open workspace for an access personal geodatabase");
        }
示例#4
0
        public void OpenFeatureClass_Test(string subDirectory, string pgdbFilename, string featureclassName)
        {
            string temp = System.IO.Path.Combine(_dataDirectory, subDirectory);
            string pgdb = System.IO.Path.Combine(temp, pgdbFilename);

            IWorkspace        workspace        = GeodatabaseUtil.GetAccessWorkspace(pgdb);
            IFeatureWorkspace featureWorkspace = workspace as IFeatureWorkspace;

            IFeatureClass featureClass = FeatureClassUtil.OpenFeatureClass(featureWorkspace, featureclassName);

            Assert.IsNotNull(featureClass, "Unable to open Feature class '" + featureclassName + "' in the PGDB '" + pgdbFilename + "'.");
        }
示例#5
0
        public void GetWorkspaceName_Test(string subDirectory, string pgdbFileName)
        {
            string temp     = System.IO.Path.Combine(_dataDirectory, subDirectory);
            string pgdbFile = System.IO.Path.Combine(temp, pgdbFileName);

            IWorkspace workspace = GeodatabaseUtil.GetAccessWorkspace(pgdbFile);

            if (workspace != null)
            {
                Assert.IsNotNull(GeodatabaseUtil.GetWorkspaceName(workspace), "Unable to obtain the workspace name from the workspace.");
            }
            else
            {
                Assert.Fail("Unable to run test. A valid workspace input argument cannot be obtained.");
            }
        }
示例#6
0
        public void TransferData_Test(string subDirectory, string inputPGDBFile, string inputFeatureClassName)
        {
            string temp = System.IO.Path.Combine(_dataDirectory, subDirectory);
            string pgdb = System.IO.Path.Combine(temp, inputPGDBFile);

            IWorkspace        inWorkspace        = GeodatabaseUtil.GetAccessWorkspace(pgdb);
            IFeatureWorkspace inFeatureWorkspace = (IFeatureWorkspace)inWorkspace;
            IFeatureClass     inFeatureClass     = FeatureClassUtil.OpenFeatureClass(inFeatureWorkspace, inputFeatureClassName);
            IGeoDataset       geoDataset         = (IGeoDataset)inFeatureClass;

            string[] files = Directory.GetFiles(temp, inputFeatureClassName + ".*", SearchOption.TopDirectoryOnly);

            foreach (string item in files)
            {
                File.Delete(item);
            }

            IWorkspace        outWorkspace        = GeodatabaseUtil.GetShapefileWorkspace(temp);
            IFeatureWorkspace outFeatureWorkspace = (IFeatureWorkspace)outWorkspace;
            IWorkspaceName    outWorkspaceName    = GeodatabaseUtil.GetWorkspaceName(outWorkspace);
            IFeatureClassName outFeatureclassName = GeodatabaseUtil.GetFeatureClassName(outWorkspaceName, inputFeatureClassName);

            IEnumInvalidObject invalidObjects = GeodatabaseUtil.TransferData(inFeatureWorkspace, inFeatureClass, outFeatureWorkspace, outFeatureclassName, null, null, geoDataset.SpatialReference);
        }