internal MiningValueCollectionInternal(MiningModelColumn column) { this.internalObjectCollection = new ArrayList(); if (column.IsTable) { return; } AdomdCommand adomdCommand = new AdomdCommand(); adomdCommand.CommandText = string.Format(CultureInfo.InvariantCulture, "SELECT DISTINCT {0} FROM [{1}]", new object[] { column.FullyQualifiedName, column.ParentMiningModel.Name }); adomdCommand.Connection = column.ParentMiningModel.ParentConnection; AdomdDataReader adomdDataReader = adomdCommand.ExecuteReader(); int num = -1; while (adomdDataReader.Read()) { num++; object objValue = adomdDataReader[0]; string content = column.Content; MiningValueType valueType = MiningValueType.Missing; if (num == 0 && content.IndexOf("key", StringComparison.OrdinalIgnoreCase) < 0) { valueType = MiningValueType.Missing; } else if (string.Compare(content, "discrete", StringComparison.OrdinalIgnoreCase) == 0 || string.Compare(content, "key", StringComparison.OrdinalIgnoreCase) == 0) { valueType = MiningValueType.Discrete; } else if (content.IndexOf("discretized", StringComparison.OrdinalIgnoreCase) == 0) { valueType = MiningValueType.Discretized; } else if (string.Compare(content, "continuous", StringComparison.OrdinalIgnoreCase) == 0) { valueType = MiningValueType.Continuous; } MiningValue newValue = new MiningValue(valueType, num, objValue); this.Add(newValue); } adomdDataReader.Close(); adomdDataReader.Dispose(); adomdCommand.Dispose(); }
internal MiningValue(MiningValueType valueType, int index, object objValue) { this.valueType = valueType; this.index = index; this.objValue = objValue; }
internal MiningValue() { this.valueType = MiningValueType.PreRenderedString; }