public void SetDouble(string keyName, double value) { DxBaseValue result; if (records.TryGetValue(keyName, out result)) { switch (result.Type) { case ValueType.VT_Array: ((DxArrayValue)result).Clear(); break; case ValueType.VT_Map: ((DxRecordValue)result).Clear(); break; default: result.AsDouble = value; return; } records[keyName] = new DxDoubleValue(value); return; } records.Add(keyName, new DxDoubleValue(value)); }
public void SetDouble(int idx, double value) { idx = ifNilInitArr2idx(idx); DxBaseValue v = arrayList[idx]; if (v != null && v.Type != ValueType.VT_Array && v.Type != ValueType.VT_Map) { arrayList[idx].AsDouble = value; return; } arrayList[idx] = new DxDoubleValue(value); }