Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2014
361
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.80 KB | None | 0 0
  1. private void TransferData(IFeatureClass sourceFeatureClass, IFeatureClass targetFeatureClass)
  2.         {
  3.  
  4.             IDataset inDataset = sourceFeatureClass as IDataset;
  5.  
  6.             IDataset outDataset = targetFeatureClass as IDataset;
  7.  
  8.             // Get Name Objects
  9.  
  10.             IFeatureClassName fcName = inDataset.FullName as IFeatureClassName;
  11.             IFeatureClassName targetWSName = outDataset.FullName as IFeatureClassName;
  12.  
  13.             // Prepare Transfer Parameters
  14.             IName fromName = fcName as IName;
  15.             IName toName = targetWSName as IName;
  16.  
  17.             // Prepare input enum and add fromName to it
  18.             IEnumName fromNameEnum = new NamesEnumerator();
  19.             IEnumNameEdit fromNameEnumEdit = (IEnumNameEdit)fromNameEnum;
  20.             fromNameEnumEdit.Add(fromName);
  21.  
  22.             // Generate name Mapping
  23.             IGeoDBDataTransfer transferer = new GeoDBDataTransferClass();
  24.             IEnumNameMapping fromMapping;
  25.             bool v = transferer.GenerateNameMapping(fromNameEnum, toName, out fromMapping);
  26.             fromMapping.Reset();
  27.             // Do The Transfer
  28.             try
  29.             {
  30.                 transferer.Transfer(fromMapping, toName);
  31.             }
  32.             catch (System.AccessViolationException avEx)
  33.             {
  34.                 Console.WriteLine(avEx.Message);
  35.             }
  36.             catch (System.IO.FileLoadException flEx)
  37.             {
  38.                 Console.WriteLine(flEx.Message);
  39.             }
  40.             catch (COMException COMex)
  41.             {
  42.                 Console.WriteLine("Error " + COMex.ErrorCode.ToString() + ": " + COMex.Message);
  43.             }
  44.             catch (Exception ex)
  45.             {
  46.                 Console.WriteLine(ex.Message + " :" + ex.StackTrace);
  47.  
  48.             }
  49.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement