Note

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

SpeechRecognitionEngine.Grammars Property

Gets a collection of the Grammar objects that are loaded in this SpeechRecognitionEngine instance.

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

Syntax

'Declaration
Public ReadOnly Property Grammars As ReadOnlyCollection(Of Grammar)
    Get
'Usage
Dim instance As SpeechRecognitionEngine
Dim value As ReadOnlyCollection(Of Grammar)

value = instance.Grammars
public ReadOnlyCollection<Grammar> Grammars { get; }

Property Value

Type: System.Collections.ObjectModel.ReadOnlyCollection<Grammar>
The collection of Grammar objects.

Examples

The following example outputs information to the console for each speech recognition grammar that is currently loaded by a speech recognizer.

Important

Copy the grammar collection to avoid errors if the collection is modified while this method enumerates the elements of the collection.

private static void ListGrammars(SpeechRecognitionEngine recognizer)
{
  string qualifier;
  List<Grammar> grammars = new List<Grammar>(recognizer.Grammars);
  foreach (Grammar g in grammars)
  {
    qualifier = (g.Enabled) ? "enabled" : "disabled";

    Console.WriteLine("Grammar {0} is loaded and is {1}.",
      g.Name, qualifier);
  }
}

See Also

Reference

SpeechRecognitionEngine Class

SpeechRecognitionEngine Members

Microsoft.Speech.Recognition Namespace

Grammar

[T:System.Collections.ObjectModel.ReadOnlyCollection(T)]