private void method_11() { esriExportDataChangesOption esriExportToAccess = esriExportDataChangesOption.esriExportToAccess; if (Path.GetExtension(this.string_0).ToLower() == ".xml") { esriExportToAccess = esriExportDataChangesOption.esriExportToXML; } IExportDataChanges changes = new DataChangesExporterClass(); IName name = this.iworkspaceName_0 as IName; IWorkspace workspace = name.Open() as IWorkspace; IWorkspaceReplicas replicas = workspace as IWorkspaceReplicas; IEnumReplica replica = replicas.Replicas; replica.Reset(); if (replica != null) { for (IReplica replica2 = replica.Next(); replica2 != null; replica2 = replica.Next()) { if (replica2.ReplicaRole == esriReplicaType.esriCheckOutTypeChild) { IReplicaDataChangesInit init = new CheckOutDataChangesClass(); init.Init(replica2, this.iworkspaceName_0); IDataChanges dataChanges = init as IDataChanges; changes.ExportDataChanges(this.string_0, esriExportToAccess, dataChanges, true); } } } }
/// <summary> /// Exports the version differences to the specified export file. /// </summary> /// <param name="source">The source.</param> /// <param name="target">The target.</param> /// <param name="exportFileName">Name of the export file.</param> /// <param name="exportOption">The export option.</param> /// <param name="overwrite">if set to <c>true</c> when the delta file should be overwritten when it exists.</param> public static void ExportDataChanges(this IVersion source, IVersion target, string exportFileName, esriExportDataChangesOption exportOption, bool overwrite) { IVersionDataChangesInit vdci = new VersionDataChangesClass(); IWorkspaceName wsNameSource = (IWorkspaceName)((IDataset)source).FullName; IWorkspaceName wsNameTarget = (IWorkspaceName)((IDataset)target).FullName; vdci.Init(wsNameSource, wsNameTarget); IExportDataChanges2 edc = new DataChangesExporterClass(); edc.ExportDataChanges(exportFileName, exportOption, (IDataChanges)vdci, overwrite); }
/// <summary> /// Exports or imports the version edits as XML files. /// </summary> /// <param name="args">The arguments.</param> internal void Run(ProgramArguments args) { using (EsriRuntimeAuthorization lic = new EsriRuntimeAuthorization(ProductCode.EngineOrDesktop)) { if (lic.Initialize(esriLicenseProductCode.esriLicenseProductCodeStandard)) { var workspace = WorkspaceFactories.Open(Path.GetFullPath(args.ConnectionFile)); var versionedWorkspace = (IVersionedWorkspace)workspace; switch (args.Task) { case ProgramTask.Import: var version = versionedWorkspace.DefaultVersion.CreateVersion(args.VersionName); var workspaceName = (IWorkspaceName)((IDataset)version).FullName; string changesFileName = Path.GetFullPath(args.Path); IDeltaDataChangesInit2 ddci = new DeltaDataChangesClass(); ddci.Init2(changesFileName, esriExportDataChangesOption.esriExportToXML, false); IImportDataChanges idc = new DataChangesImporterClass(); idc.ImportDataChanges(workspaceName, (IDeltaDataChanges)ddci, true, true); break; case ProgramTask.Export: var source = versionedWorkspace.FindVersion(args.VersionName); var target = source.GetParent(); IWorkspaceName wsNameSource = (IWorkspaceName)((IDataset)source).FullName; IWorkspaceName wsNameTarget = (IWorkspaceName)((IDataset)target).FullName; var exportFileName = Path.Combine(Path.GetFullPath(args.Path), args.VersionName + ".xml"); IVersionDataChangesInit vdci = new VersionDataChangesClass(); vdci.Init(wsNameSource, wsNameTarget); IExportDataChanges2 edc = new DataChangesExporterClass(); edc.ExportDataChanges(exportFileName, esriExportDataChangesOption.esriExportToXML, (IDataChanges)vdci, true); break; } } } }