GrammarBuilder.AppendWildcard Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menambahkan elemen tata bahasa pengenalan yang cocok dengan input apa pun dengan urutan elemen tata bahasa saat ini.
public:
void AppendWildcard();
public void AppendWildcard ();
member this.AppendWildcard : unit -> unit
Public Sub AppendWildcard ()
Contoh
Contoh berikut membuat tata bahasa yang menerima input kata sandi sebagai kartubebas. Contoh melampirkan Grammar.SpeechRecognized penanganan aktivitas ke tata bahasa yang memvalidasi input kata sandi.
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;
}
Keterangan
Elemen kartubebas ditambahkan ke akhir urutan elemen saat ini.
Elemen kartubebas cocok dengan kata yang diucapkan. Ini tidak cocok dengan kebisingan latar belakang atau keheningan.