private void SetEntityColumnValue(ImportEntity importEntity, ImportColumn column, ImportColumnValue columnValue)
 {
     foreach (ImportColumnDestination destination in column.Destinations)
     {
         Entity entity          = importEntity.GetEntityForSave(UserConnection, destination);
         string columnValueName = destination.ColumnValueName;
         object valueForSave    = ColumnsProcessor.FindValueForSave(destination, columnValue);
         if (valueForSave == null)
         {
             continue;
         }
         if (entity.StoringState != StoringObjectState.New)
         {
             object entityValue = entity.GetColumnValue(columnValueName);
             if (valueForSave.Equals(entityValue) || destination.IsKey)
             {
                 continue;
             }
         }
         if (entity.Schema.Columns.GetByName(destination.ColumnName).DataValueType is TextDataValueType)
         {
             valueForSave = valueForSave.ToString().Trim();
         }
         entity.SetColumnValue(columnValueName, valueForSave);
     }
 }
Beispiel #2
0
 private void InitEntityForSave(ImportParameters parameters, ImportEntity importEntity)
 {
     importEntity.InitPrimaryEntity(UserConnection, parameters);
     foreach (var column in parameters.Columns)
     {
         var columnValue = importEntity.FindColumnValue(column);
         if (columnValue == null)
         {
             continue;
         }
         foreach (var destination in column.Destinations)
         {
             var entity          = importEntity.GetEntityForSave(UserConnection, destination);
             var columnValueName = destination.ColumnValueName;
             var valueForSave    = ColumnsProcessor.FindValueForSave(destination, columnValue);
             if (valueForSave == null)
             {
                 continue;
             }
             if (entity.StoringState != StoringObjectState.New)
             {
                 var entityValue = entity.GetColumnValue(columnValueName);
                 if (valueForSave.Equals(entityValue) || destination.IsKey)
                 {
                     continue;
                 }
             }
             if (entity.Schema.Columns.GetByName(destination.ColumnName).DataValueType is TextDataValueType)
             {
                 valueForSave = valueForSave.ToString().Trim();
             }
             entity.SetColumnValue(columnValueName, valueForSave);
         }
     }
 }