/// <summary> /// Creates strings containing random syllables. /// </summary> /// <param name="randSyllableStringType">enRandomSyllableStringType enumeration used to specify format of the syllable strings.</param> /// <param name="numRows">Number of DataTable rows to generate containing random syllable strings.</param> /// <param name="minNumStrings">Minimum number of random syllable strings to generate for each output row.</param> /// <param name="maxNumStrings">Maximum number of random syllable strings to generate for each output row.</param> /// <param name="stringMinimumLength">Minimum length of random syllable strings to generate for each output row.</param> /// <param name="stringMaximumLength">Maximum length of random syllable strings to generate for each output row.</param> /// <returns>ADO.NET DataTable containing the generated random syllables.</returns> public DataTable CreateRandomSyllableStringsDataTable(enRandomSyllableStringType randSyllableStringType, int numRows, string minNumStrings, string maxNumStrings, string stringMinimumLength, string stringMaximumLength) { DataTable dt = new DataTable(); RandomNumber rn = new RandomNumber(); StringBuilder randString = new StringBuilder(); try { int minimumNumberOfStrings = Convert.ToInt32(minNumStrings); int maximumNumberOfStrings = Convert.ToInt32(maxNumStrings); int minimumLength = Convert.ToInt32(stringMinimumLength); int maximumLength = Convert.ToInt32(stringMaximumLength); DataColumn dc = new DataColumn("RandomValue"); dc.DataType = Type.GetType("System.String"); dt.Columns.Add(dc); for (int i = 0; i < numRows; i++) { DataRow dr = dt.NewRow(); int numStrings = rn.GenerateRandomInt(minimumNumberOfStrings, maximumNumberOfStrings); randString.Length = 0; for (int s = 0; s < numStrings; s++) { int size = rn.GenerateRandomInt(minimumLength, maximumLength); string str = getRandomSyllableString[(int)randSyllableStringType](size); randString.Append(str); randString.Append(" "); } dr[0] = randString.ToString(); dt.Rows.Add(dr); } } catch (System.Exception ex) { _msg.Length = 0; _msg.Append("Error in CreateRandomSyllableStringsDataTable routine.\r\n"); _msg.Append(AppGlobals.AppMessages.FormatErrorMessage(ex)); throw new System.Exception(_msg.ToString()); } finally { ; } return(dt); }
//properties //methods /// <summary> /// Creates an ADO.NET DataTable object containing list of random strings. /// </summary> /// <param name="numRows">Number of rows containing random strings to generate.</param> /// <param name="dataRequest">RandomStringDataRequest object containing definition for the type of strings to generate.</param> /// <returns>ADO.NET DataTable object.</returns> public DataTable CreateRandomDataTable(int numRows, RandomStringDataRequest dataRequest) { DataTable dt = null; enRandomStringType randStringType = enRandomStringType.enUnknown; enRandomSyllableStringType randSyllableStringType = enRandomSyllableStringType.enUnknown; if (dataRequest.OutputRandomStrings) { randStringType = GetRandomStringType(dataRequest); if (randStringType != enRandomStringType.enUnknown) { dt = CreateRandomStringsDataTable(randStringType, numRows, dataRequest.MinNumStrings, dataRequest.MaxNumStrings, dataRequest.StringMinimumLength, dataRequest.StringMaximumLength); } } else if (dataRequest.OutputRandomSyllableStrings) { randSyllableStringType = GetRandomSyllableStringType(dataRequest); if (randSyllableStringType != enRandomSyllableStringType.enUnknown) { dt = CreateRandomSyllableStringsDataTable(randSyllableStringType, numRows, dataRequest.MinNumSyllableStrings, dataRequest.MaxNumSyllableStrings, dataRequest.SyllableStringMinimumLength, dataRequest.SyllableStringMaximumLength); } } else if (dataRequest.OutputRepeatingStrings) { if (dataRequest.OutputRepeatRandomCharacter) { randStringType = GetRandomRepeatingStringType(dataRequest); if (randStringType != enRandomStringType.enUnknown) { dt = CreateRandomRepeatingCharacterDataTable(randStringType, numRows, dataRequest.MinRepeatOutputLength, dataRequest.MaxRepeatOutputLength, dataRequest.MinNumRepeats, dataRequest.MaxNumRepeats); } } else { dt = CreateRepeatingTextDataTable(numRows, dataRequest.TextToRepeat, dataRequest.MinNumRepeats, dataRequest.MaxNumRepeats); } } else { dt = new DataTable(); } return(dt); }
private enRandomSyllableStringType GetRandomSyllableStringType(RandomStringDataRequest dataRequest) { enRandomSyllableStringType randSyllableStringType = enRandomSyllableStringType.enUnknown; if (dataRequest.OutputSyllableUCLC) { randSyllableStringType = enRandomSyllableStringType.enUCLC; } else if (dataRequest.OutputSyllableLC) { randSyllableStringType = enRandomSyllableStringType.enLC; } else if (dataRequest.OutputSyllableUC) { randSyllableStringType = enRandomSyllableStringType.enUC; } else { randSyllableStringType = enRandomSyllableStringType.enUnknown; } return(randSyllableStringType); }