//properties //methods /// <summary> /// Creates a DataTable containing a set of random number values. /// </summary> /// <param name="numRows">Num of rows with number values to generate.</param> /// <param name="dataRequest">RandomNumberDataRequest object contains the definition for how to generate the random numbers.</param> /// <returns>ADO.NET DataTable containing the set of random values.</returns> public DataTable CreateRandomNumberDataTable(int numRows, RandomNumberDataRequest dataRequest) { enRandomNumberType numType = enRandomNumberType.enUnknown; DataTable dt = null; numType = GetRandomNumberTypeFromDataRequest(dataRequest); if (dataRequest.OutputRangeOfNumbers) { dt = CreateRangeDataTable(numType, numRows, dataRequest.MinimumValueForRange, dataRequest.MaximumValueForRange); } else if (dataRequest.OutputOffsetFromCurrentNumber) { dt = CreateOffsetDataTable(numType, numRows, dataRequest.MinimumOffsetPercent, dataRequest.MaximumOffsetPercent); } else if (dataRequest.OutputSequentialNumbers) { dt = CreateSequentialNumbersDataTable(numType, numRows, dataRequest.StartSequentialValue, dataRequest.IncrementForSequentialValue, dataRequest.MaxSequentialValue, dataRequest.InitStartSequentialValue); } else { dt = new DataTable(); //return an empty data table } return(dt); }
/// <summary> /// Routine to retrieve the number type from a RandomNumberDataRequest object. /// </summary> /// <param name="dataRequest">RandomNumberDataRequest object containing the definition for the random number generation.</param> /// <returns>enRandomNumberType enum value.</returns> public enRandomNumberType GetRandomNumberTypeFromDataRequest(RandomNumberDataRequest dataRequest) { enRandomNumberType randNumType = enRandomNumberType.enUnknown; if (dataRequest.OutputIntegerValue) { if (dataRequest.Output64bitInteger) { if (dataRequest.OutputSignedInteger) { randNumType = enRandomNumberType.enLong; } else { randNumType = enRandomNumberType.enULong; } } else if (dataRequest.Output32bitInteger) { if (dataRequest.OutputSignedInteger) { randNumType = enRandomNumberType.enInt; } else { randNumType = enRandomNumberType.enUInt; } } else if (dataRequest.Output16bitInteger) { if (dataRequest.OutputSignedInteger) { randNumType = enRandomNumberType.enShort; } else { randNumType = enRandomNumberType.enUShort; } } else if (dataRequest.Output8bitInteger) { if (dataRequest.OutputSignedInteger) { randNumType = enRandomNumberType.enSByte; } else { randNumType = enRandomNumberType.enByte; } } else { randNumType = enRandomNumberType.enUnknown; } } else if (dataRequest.OutputDoubleValue) { randNumType = enRandomNumberType.enDouble; } else if (dataRequest.OutputFloatValue) { randNumType = enRandomNumberType.enFloat; } else if (dataRequest.OutputDecimalValue) { randNumType = enRandomNumberType.enDecimal; } else { randNumType = enRandomNumberType.enUnknown; } return(randNumType); }