GrammarBuilder Implicit Conversion (SemanticResultValue to GrammarBuilder)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.


Converts a SemanticResultValue object to a GrammarBuilder object.

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

public static implicit operator GrammarBuilder (
	SemanticResultValue semanticValue


Type: System.Speech.Recognition.SemanticResultValue

The SemanticResultValue object to convert.

Return Value

Type: System.Speech.Recognition.GrammarBuilder

The converted SemanticResultValue object.

Implicit conversion creates a new instance of GrammarBuilder. This conversion operator is equivalent to calling GrammarBuilder and specifying semanticValue for the value.

The following example creates a speech recognition grammar that can recognize a response to a "yes" or "no" question. The implicit conversion operator is used in the construction of a SemanticResultValue object from a Choicesobject, in the construction of a Choices object from two SemanticResultValue objects, and in the construction of a Grammar object from a SemanticResultKey object.

Choices yesChoices = new Choices(new string[] {"yes", "yup", "yah"});
SemanticResultValue yesValue =
  new SemanticResultValue(yesChoices, true);

Choices noChoices = new Choices(new string[] { "no", "nope", "nah" });
SemanticResultValue noValue =
  new SemanticResultValue(noChoices, false);

SemanticResultKey yesnoKey =
  new SemanticResultKey("yesno", new Choices(new GrammarBuilder[] { yesValue, noValue }));

Grammar yesnoGrammar = new Grammar(yesnoKey);
yesnoGrammar.Name = "yesno";

.NET Framework
Available since 3.0
Return to top