コード例 #1
0
 /// ------------------------------------------------------------------------------------
 /// <summary>
 /// Returns an enumerator that iterates through the collection of questions.
 /// </summary>
 /// <returns>
 /// A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to
 /// iterate through the collection.
 /// </returns>
 /// ------------------------------------------------------------------------------------
 public static void GenerateAlternateForms(QuestionSections sections, Dictionary <string, string[]> alternatives)
 {
     string[] altForms;
     foreach (Section section in sections.Items)
     {
         foreach (Category category in section.Categories)
         {
             if (category.Questions == null)
             {
                 continue;
             }
             foreach (Question q in category.Questions)
             {
                 if (alternatives != null && alternatives.TryGetValue(q.Text, out altForms))
                 {
                     q.AlternateForms = altForms;
                 }
                 else
                 {
                     QuestionProviderAlternateFormBuilder bldr = new QuestionProviderAlternateFormBuilder(q.Text);
                     if (bldr.Alternatives.Count > 1)
                     {
                         q.AlternateForms = new string[bldr.Alternatives.Count];
                         for (int index = 0; index < bldr.Alternatives.Count; index++)
                         {
                             q.AlternateForms[index] = bldr.Alternatives[index];
                         }
                     }
                 }
             }
         }
     }
 }
コード例 #2
0
		/// ------------------------------------------------------------------------------------
		/// <summary>
		/// Returns an enumerator that iterates through the collection of questions.
		/// </summary>
		/// <returns>
		/// A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to
		/// iterate through the collection.
		/// </returns>
		/// ------------------------------------------------------------------------------------
		public static void GenerateAlternateForms(QuestionSections sections, Dictionary<string, string[]> alternatives)
		{
			string[] altForms;
			foreach (Section section in sections.Items)
			{
				foreach (Category category in section.Categories)
				{
					if (category.Questions == null)
						continue;
					foreach (Question q in category.Questions)
					{
						if (alternatives != null && alternatives.TryGetValue(q.Text, out altForms))
							q.AlternateForms = altForms;
						else
						{
							QuestionProviderAlternateFormBuilder bldr = new QuestionProviderAlternateFormBuilder(q.Text);
							if (bldr.Alternatives.Count > 1)
							{
								q.AlternateForms = new string[bldr.Alternatives.Count];
								for (int index = 0; index < bldr.Alternatives.Count; index++)
									q.AlternateForms[index] = bldr.Alternatives[index];
							}
						}
					}
				}
			}
		}