• C#粘贴复制数据库中的内容


    // Create new workspace name objects. IWorkspaceName sourceWorkspaceName = new WorkspaceNameClass();
    IWorkspaceName targetWorkspaceName = new WorkspaceNameClass();
    IName targetName = (IName)targetWorkspaceName;

    // Set the workspace name properties.
    sourceWorkspaceName.PathName = @
        "C:\arcgis\ArcTutor\BuildingaGeodatabase\Montgomery.gdb";
    sourceWorkspaceName.WorkspaceFactoryProgID =
        "esriDataSourcesGDB.FileGDBWorkspaceFactory";
    targetWorkspaceName.PathName = @"PartialMontgomery.gdb";
    targetWorkspaceName.WorkspaceFactoryProgID =
        "esriDataSourcesGDB.FileGDBWorkspaceFactory";

    // Create a name object for the source feature class.
    IFeatureClassName featureClassName = new FeatureClassNameClass();

    // Set the featureClassName properties.
    IDatasetName sourceDatasetName = (IDatasetName)featureClassName;
    sourceDatasetName.WorkspaceName = sourceWorkspaceName;
    sourceDatasetName.Name = "Blocks";
    IName sourceName = (IName)sourceDatasetName;

    // Create an enumerator for source datasets.
    IEnumName sourceEnumName = new NamesEnumeratorClass();
    IEnumNameEdit sourceEnumNameEdit = (IEnumNameEdit)sourceEnumName;

    // Add the name object for the source class to the enumerator.
    sourceEnumNameEdit.Add(sourceName);

    // Create a GeoDBDataTransfer object and a null name mapping enumerator.
    IGeoDBDataTransfer geoDBDataTransfer = new GeoDBDataTransferClass();
    IEnumNameMapping enumNameMapping = null;

    // Use the data transfer object to create a name mapping enumerator.
    Boolean conflictsFound = geoDBDataTransfer.GenerateNameMapping(sourceEnumName,
        targetName, out enumNameMapping);
    enumNameMapping.Reset();

    // Check for conflicts.
    if (conflictsFound)
    {
        // Iterate through each name mapping.
        INameMapping nameMapping = null;
        while ((nameMapping = enumNameMapping.Next()) != null)
        {
            // Resolve the mapping's conflict (if there is one).
            if (nameMapping.NameConflicts)
            {
                nameMapping.TargetName = nameMapping.GetSuggestedName(targetName);
            }

            // See if the mapping's children have conflicts.
            IEnumNameMapping childEnumNameMapping = nameMapping.Children;
            if (childEnumNameMapping != null)
            {
                childEnumNameMapping.Reset();

                // Iterate through each child mapping.
                INameMapping childNameMapping = null;
                while ((childNameMapping = childEnumNameMapping.Next()) != null)
                {
                    if (childNameMapping.NameConflicts)
                    {
                        childNameMapping.TargetName = childNameMapping.GetSuggestedName
                            (targetName);
                    }
                }
            }
        }
    }

  • 相关阅读:
    Python基础数据类型二
    集合
    SourceInsight打开的工程中中文字体显示乱码的问题
    3、U-boot的环境变量: bootcmd 和bootargs
    2、qq物联环境搭建
    FTP、SSH、NFS等环境工具的安装
    1、基本概念介绍
    7、从系统角度考虑电源管理,我们要学习更多
    6、修改应用程序数码相框以支持自动关闭LCD
    5、regulator系统的概念及测试
  • 原文地址:https://www.cnblogs.com/zuiyirenjian/p/1909657.html
Copyright © 2020-2023  润新知