C# 如何为SAPI中的语法赋予优先级?

C# 如何为SAPI中的语法赋予优先级?,c#,.net,speech-recognition,speech,sapi,C#,.net,Speech Recognition,Speech,Sapi,我正在使用SAPI创建一个语音识别应用程序。我需要能够为我使用的不同语法赋予不同的优先级。(听写语法和我定义的其他语法)仅当语音输入与我定义的语法中的任何单词不匹配时,我需要识别器在我定义的语法中搜索并查看听写语法。 现在我有一个这样的代码: Grammar myGram; Choices myEditor = new Choices(); myEditor.Add("public"); //adding other choices myGram = new Grammar(new Gramma

我正在使用SAPI创建一个语音识别应用程序。我需要能够为我使用的不同语法赋予不同的优先级。(听写语法和我定义的其他语法)仅当语音输入与我定义的语法中的任何单词不匹配时,我需要识别器在我定义的语法中搜索并查看听写语法。 现在我有一个这样的代码:

Grammar myGram;
Choices myEditor = new Choices();
myEditor.Add("public");
//adding other choices
myGram = new Grammar(new GrammarBuilder(myEditor));
SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine();
recognizer.LoadGrammar(myGram);
Grammar dictation = new DictationGrammar();
dictation.Name = "Dictation Grammar";
recognizer.LoadGrammar(dictation);
recognizer.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(
               SpeechRecognizedHandler);
recognizer.SetInputToDefaultAudioDevice();
recognizer.RecognizeAsync(RecognizeMode.Multiple);
语法myGram;
选项myEditor=新选项();
myEditor.Add(“public”);
//添加其他选择
myGram=新语法(新语法生成器(myEditor));
SpeechRecognitionEngine识别器=新建SpeechRecognitionEngine();
识别器。加载语法(myGram);
语法听写=新听写语法();
听写。Name=“听写语法”;
识别器。加载语法(听写);
recognizer.SpeechRecognized+=新事件处理程序(
演讲人(赞助人);
recognizer.setInputOdeFaultAudioDevice();
识别器.RecognizeAsync(RecognizeMode.Multiple);

请告诉我如何将myGram优先于听写语法

如果使用符合SRGS的语法,基本上可以用来分配优先级。该对象不支持符合的xml格式语法