Share via


Note

Please see Azure Cognitive Services for Speech documentation for the latest supported speech solutions.

Choices Constructor (String[])

Initializes a new instance of the Choices class from an array containing one or more String objects.

Namespace:  Microsoft.Speech.Recognition
Assembly:  Microsoft.Speech (in Microsoft.Speech.dll)

Syntax

'Declaration
Public Sub New ( _
    ParamArray phrases As String() _
)
'Usage
Dim phrases As String()

Dim instance As New Choices(phrases)
public Choices(
    params string[] phrases
)

Parameters

  • phrases
    Type: []
    An array containing the set of alternatives.

Remarks

Each String in phrases defines one alternative. The speech recognition engine can use any one of the items in the string array to match speech input. If phrases is an empty array, the constructor returns an empty set of alternatives. You can add alternatives using any of the Add methods.

The constructor throws an ArgumentNullException when phrases is a null reference (Nothing in Visual Basic) or any of the array elements are a null reference (Nothing in Visual Basic). The constructor throws an ArgumentException if any element in the array is an empty string ("").

Examples

The following example uses Choices and GrammarBuilder objects to create a phrase that can be used to recognize speech input such as "Call Anne on her cell" and "Call James on his work phone". The example uses implicit casts from Choices and String to GrammarBuilder.

public Grammar CreatePhonePhrase()
{

  // Create alternatives for female names and add a phrase.
  GrammarBuilder females = new Choices(new string[] { "Anne", "Mary" });
  females.Append("on her");

  // Create alternatives for male names and add a phrase.
  GrammarBuilder males = new Choices(new string[] { "James", "Sam" });
  males.Append("on his");

  // Create a Choices object that contains an array of alternative
  // GrammarBuilder objects.
  Choices people = new Choices();
  people.Add(new Choices(new GrammarBuilder[] {females, males}));

  // Create a Choices object that contains a set of alternative phone types.
  Choices phoneType = new Choices();
  phoneType.Add(new string[] { "cell", "home", "work" });

  // Construct the phrase.
  GrammarBuilder gb = new GrammarBuilder();
  gb.Append("call");
  gb.Append(people);
  gb.Append(phoneType);
  gb.Append(new GrammarBuilder("phone"), 0, 1);

  return new Grammar(gb);
}

See Also

Reference

Choices Class

Choices Members

Choices Overload

Microsoft.Speech.Recognition Namespace

GrammarBuilder

Grammar

SemanticResultValue

SemanticResultKey