- Timestamp:
- 01/12/16 16:08:38 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Services.OKB/3.3/RunCreation/Convert.cs
r12012 r13501 68 68 entity.Values.Add(Convert.ToEntity(value, entity, DA.ValueNameCategory.Result, okb, binCache)); 69 69 return entity; 70 } 71 72 public static DA.CharacteristicValue ToEntity(DT.Value source, DA.OKBDataContext okb, DA.Problem problem, string characteristicName, DA.CharacteristicType type) { 73 if (okb == null || problem == null || string.IsNullOrEmpty(characteristicName) || source == null) throw new ArgumentNullException(); 74 var entity = new DA.CharacteristicValue(); 75 entity.Problem = problem; 76 entity.DataType = Convert.ToEntity(source.DataType, okb); 77 entity.Characteristic = Convert.ToEntity(characteristicName, type, okb); 78 if (source is DT.BoolValue) { 79 entity.BoolValue = ((DT.BoolValue)source).Value; 80 } else if (source is DT.IntValue) { 81 entity.IntValue = ((DT.IntValue)source).Value; 82 } else if (source is DT.TimeSpanValue) { 83 entity.LongValue = ((DT.TimeSpanValue)source).Value; 84 } else if (source is DT.LongValue) { 85 entity.LongValue = ((DT.LongValue)source).Value; 86 } else if (source is DT.FloatValue) { 87 entity.FloatValue = ((DT.FloatValue)source).Value; 88 } else if (source is DT.DoubleValue) { 89 entity.DoubleValue = ((DT.DoubleValue)source).Value; 90 } else if (source is DT.PercentValue) { 91 entity.DoubleValue = ((DT.PercentValue)source).Value; 92 } else if (source is DT.StringValue) { 93 entity.StringValue = ((DT.StringValue)source).Value; 94 } else { 95 throw new ArgumentException("Unknown characteristic type.", "source"); 96 } 97 return entity; 98 } 99 100 private static DA.Characteristic ToEntity(string name, DA.CharacteristicType type, DA.OKBDataContext okb) { 101 if (string.IsNullOrEmpty(name)) return null; 102 var entity = okb.Characteristics.FirstOrDefault(x => (x.Name == name) && (x.Type == type)); 103 return entity ?? new DA.Characteristic() { Id = 0, Name = name, Type = type }; 70 104 } 71 105
Note: See TracChangeset
for help on using the changeset viewer.