GrammarBuilder.AppendWildcard Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt ein Erkennungsgrammatikelement an, das jeder Eingabe der aktuellen Grammatikelemente entspricht.
public:
void AppendWildcard();
public void AppendWildcard();
member this.AppendWildcard : unit -> unit
Public Sub AppendWildcard ()
Beispiele
Im folgenden Beispiel wird eine Grammatik erstellt, die die Kennworteingabe als Wildcard akzeptiert. Im Beispiel wird ein Grammar.SpeechRecognized Ereignishandler an die Grammatik angefügt, mit der die Kennworteingabe überprüft wird.
private Grammar CreatePasswordGrammar()
{
GrammarBuilder wildcardBuilder = new GrammarBuilder();
wildcardBuilder.AppendWildcard();
SemanticResultKey passwordKey =
new SemanticResultKey("Password", wildcardBuilder);
GrammarBuilder passwordBuilder =
new GrammarBuilder("My Password is");
passwordBuilder.Append(passwordKey);
Grammar passwordGrammar = new Grammar(passwordBuilder);
passwordGrammar.Name = "Password input";
passwordGrammar.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(
PasswordInputHandler);
return passwordGrammar;
}
// Handle the SpeechRecognized event for the password grammar.
private void PasswordInputHandler(object sender, SpeechRecognizedEventArgs e)
{
if (e.Result == null) return;
RecognitionResult result = e.Result;
SemanticValue semantics = e.Result.Semantics;
if (semantics.ContainsKey("Password"))
{
RecognizedAudio passwordAudio =
result.GetAudioForWordRange(
result.Words[3], result.Words[result.Words.Count - 1]);
if (IsValidPassword(passwordAudio))
{
Console.WriteLine("Password accepted.");
// Add code to handle a valid password here.
}
else
{
Console.WriteLine("Invalid password.");
// Add code to handle an invalid password here.
}
}
}
// Validate the password input.
private bool IsValidPassword(RecognizedAudio passwordAudio)
{
Console.WriteLine("Validating password.");
// Add password validation code here.
return false;
}
Hinweise
Das Wildcardelement wird am Ende der aktuellen Abfolge von Elementen hinzugefügt.
Das Wildcardelement stimmt mit jedem gesprochenen Wort überein. Es stimmt nicht mit Hintergrundgeräuschen oder Stillen überein.