SemanticResultValue Konstruktoren
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.
Initialisiert eine neue Instanz der SemanticResultValue-Klasse.
Überlädt
SemanticResultValue(Object) |
Initialisiert eine neue Instanz der SemanticResultValue-Klasse und gibt einen semantischen Wert an. |
SemanticResultValue(GrammarBuilder, Object) |
Initialisiert eine neue Instanz der SemanticResultValue-Klasse und ordnet einem GrammarBuilder-Objekt einen semantischen Wert zu. |
SemanticResultValue(String, Object) |
Initialisiert eine neue Instanz der SemanticResultValue-Klasse und ordnet einem String-Objekt einen semantischen Wert zu. |
Hinweise
Die SemanticResultValue
Konstruktoren unterstützen die Angabe einer Object Instanz mit dem zugrunde liegenden Datentyp bool
, int
, float
oder string
.
Ein Konstruktor kann eine- SemanticResultValue
Instanz in einem der beiden folgenden Situationen erstellen:
Die-
SemanticResultValue
Instanz muss explizit einem Grammatik Element zugeordnet werden, wenn ein verwendet wird GrammarBuilder , um eine zu erstellen Grammar .Der
SemanticResultValue
ist bereits einem Zeichen folgen Wertausdruck oder einem- GrammarBuilder Objekt zugeordnet.
SemanticResultValue(Object)
Initialisiert eine neue Instanz der SemanticResultValue-Klasse und gibt einen semantischen Wert an.
public:
SemanticResultValue(System::Object ^ value);
public SemanticResultValue (object value);
new System.Speech.Recognition.SemanticResultValue : obj -> System.Speech.Recognition.SemanticResultValue
Public Sub New (value As Object)
Parameter
- value
- Object
Der Wert, der von SemanticResultValue gesteuert wird. Der Wert muss vom Typ bool
, int
, float
oder string
sein.
Beispiele
Im folgenden Beispiel wird ein-Wert zurückgegeben Grammar , der den Befehl "Set/Change/Alter Vordergrund/Hintergrund... [Farbliste] ". SemanticResultValue -und- SemanticResultKey Instanzen (in Verbindung mit Choices -und- GrammarBuilder Objekten) werden verwendet, um Semantik zu definieren, die bei der Erkennung analysiert werden kann. Die analysierte Semantik bestimmt, welche Farbe angefordert wurde und ob der Vordergrund oder der Hintergrund geändert werden muss.
private Grammar FgBgColorGrammar()
{
Grammar grammar = null;
// Allow the command to begin with set, alter, change.
Choices introChoices = new Choices();
foreach (string introString in new string[] { "Change", "Set", "Alter" })
{
GrammarBuilder introGB = new GrammarBuilder(introString);
introChoices.Add(
new SemanticResultValue(introGB,
String.Format("Command: {0}", introString)));
}
GrammarBuilder cmdIntro = new GrammarBuilder(introChoices);
// Define the arguments for the command to select foreground or background
// and to change their color as semantic values.
Choices fgOrbgChoice = new Choices();
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
fgOrbgChoice.Add(backgroundGB);
fgOrbgChoice.Add((GrammarBuilder)new SemanticResultValue("foreground", false));
SemanticResultKey fgOrbgChoiceKey = new SemanticResultKey("BgOrFgBool", fgOrbgChoice);
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor)))
{
// Use implicit conversion of SemanticResultValue to GrammarBuilder.
colorChoice.Add(
(GrammarBuilder) (new SemanticResultValue(colorName, (Color.FromName(colorName)).Name)));
}
// Create a GrammarBuilder for CmdArgs to be appended to CmdIntro using
// semantic keys.
GrammarBuilder cmdArgs = new GrammarBuilder();
cmdArgs.Append(new SemanticResultKey("BgOrFgBool", fgOrbgChoice));
cmdArgs.AppendWildcard();
cmdArgs.Append(new SemanticResultKey("colorStringList", colorChoice));
GrammarBuilder cmds =
GrammarBuilder.Add(
cmdIntro,
new GrammarBuilder(new SemanticResultKey("Cmd Args", cmdArgs)));
grammar = new Grammar(cmds);
grammar.Name = "Tree [Set,change,alter] [foreground,background] * color";
return grammar;
}
Hinweise
Ein, SemanticResultValue
der von diesem Konstruktor zurückgegeben wird, ist keinem bestimmten Grammatik Element zugeordnet. Die Zuordnung muss explizit erfolgen, indem die Instanz von SemanticResultValue
in Verbindung mit verwendet wird GrammarBuilder .
Beispielsweise wird im folgenden Code Fragment, wenn ein, das Grammar mit dieser Instanz erstellt wurde, GrammarBuilder das Wort "Background" erkennt, der Wert true
in der erkannten Ausdrucks Semantik festgelegt wird.
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
Gilt für
SemanticResultValue(GrammarBuilder, Object)
Initialisiert eine neue Instanz der SemanticResultValue-Klasse und ordnet einem GrammarBuilder-Objekt einen semantischen Wert zu.
public:
SemanticResultValue(System::Speech::Recognition::GrammarBuilder ^ builder, System::Object ^ value);
public SemanticResultValue (System.Speech.Recognition.GrammarBuilder builder, object value);
new System.Speech.Recognition.SemanticResultValue : System.Speech.Recognition.GrammarBuilder * obj -> System.Speech.Recognition.SemanticResultValue
Public Sub New (builder As GrammarBuilder, value As Object)
Parameter
- builder
- GrammarBuilder
Eine in der Erkennung verwendete Grammatikkomponente.
- value
- Object
Der Wert, der von SemanticResultValue gesteuert wird. Der Wert muss vom Typ bool
, int
, float
oder string
sein.
Beispiele
Im folgenden Beispiel wird ein-Wert zurückgegeben Grammar , der den Befehl "Set/Change/Alter Vordergrund/Hintergrund... [Farbliste] ". SemanticResultValue -und- SemanticResultKey Instanzen (in Verbindung mit Choices -und- GrammarBuilder Objekten) werden verwendet, um Semantik zu definieren, die bei der Erkennung analysiert werden kann. Die analysierte Semantik bestimmt, welche Farbe angefordert wurde und ob der Vordergrund oder der Hintergrund geändert werden muss.
private Grammar FgBgColorGrammar()
{
Grammar grammar = null;
// Allow the command to begin with set, alter, change.
Choices introChoices = new Choices();
foreach (string introString in new string[] { "Change", "Set", "Alter" })
{
GrammarBuilder introGB = new GrammarBuilder(introString);
introChoices.Add(
new SemanticResultValue(introGB,
String.Format("Command: {0}", introString)));
}
GrammarBuilder cmdIntro = new GrammarBuilder(introChoices);
// Define the arguments for the command to select foreground or background
// and to change their color as semantic values.
Choices fgOrbgChoice = new Choices();
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
fgOrbgChoice.Add(backgroundGB);
fgOrbgChoice.Add((GrammarBuilder)new SemanticResultValue("foreground", false));
SemanticResultKey fgOrbgChoiceKey = new SemanticResultKey("BgOrFgBool", fgOrbgChoice);
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor)))
{
// Use implicit conversion of SemanticResultValue to GrammarBuilder.
colorChoice.Add(
(GrammarBuilder) (new SemanticResultValue(colorName, (Color.FromName(colorName)).Name)));
}
// Create a GrammarBuilder for CmdArgs to be appended to CmdIntro using
// semantic keys.
GrammarBuilder cmdArgs = new GrammarBuilder();
cmdArgs.Append(new SemanticResultKey("BgOrFgBool", fgOrbgChoice));
cmdArgs.AppendWildcard();
cmdArgs.Append(new SemanticResultKey("colorStringList", colorChoice));
GrammarBuilder cmds =
GrammarBuilder.Add(
cmdIntro,
new GrammarBuilder(new SemanticResultKey("Cmd Args", cmdArgs)));
grammar = new Grammar(cmds);
grammar.Name = "Tree [Set,change,alter] [foreground,background] * color";
return grammar;
}
Hinweise
Wenn das von angegebene Grammatik Element GrammarBuilder in der Erkennungs Logik verwendet wird, value
wird in der Semantik der erkannten Ausgabe festgelegt.
Wenn im folgenden Code Fragment die Erkennungs Logik, die mit der- GrammarBuilder Instanz ( myGb
) erstellt wurde, das- Choices Objekt ( myChoice
) zum Identifizieren der Eingabe verwendet, wird der Wert der true
erkannten Semantik hinzugefügt.
myGb.Append(new SemanticResultValue(myChoice, true);
Da GrammarBuilder die implizite Konvertierung für Choices , SemanticResultValue
und unterstützt SemanticResultKey , kann dieser Konstruktor auch diese Objekte verwenden.
Gilt für
SemanticResultValue(String, Object)
Initialisiert eine neue Instanz der SemanticResultValue-Klasse und ordnet einem String-Objekt einen semantischen Wert zu.
public:
SemanticResultValue(System::String ^ phrase, System::Object ^ value);
public SemanticResultValue (string phrase, object value);
new System.Speech.Recognition.SemanticResultValue : string * obj -> System.Speech.Recognition.SemanticResultValue
Public Sub New (phrase As String, value As Object)
Parameter
- phrase
- String
Ein Ausdruck, der in der Erkennung verwendetet werden soll.
- value
- Object
Der Wert, der von SemanticResultValue gesteuert wird. Der Wert muss vom Typ bool
, int
, float
oder string
sein.
Beispiele
Im folgenden Beispiel wird ein-Wert zurückgegeben Grammar , der den Befehl "Set/Change/Alter Vordergrund/Hintergrund... [Farbliste] ". SemanticResultValue -und- SemanticResultKey Instanzen (in Verbindung mit Choices -und- GrammarBuilder Objekten) werden verwendet, um Semantik zu definieren, die bei der Erkennung analysiert werden kann. Die analysierte Semantik bestimmt, welche Farbe angefordert wurde und ob der Vordergrund oder der Hintergrund geändert werden muss.
private Grammar FgBgColorGrammar()
{
Grammar grammar = null;
// Allow command to begin with set, alter, change.
Choices introChoices = new Choices();
foreach (string introString in new string[] { "Change", "Set", "Alter" })
{
GrammarBuilder introGB = new GrammarBuilder(introString);
introChoices.Add(
new SemanticResultValue(introGB,
String.Format("Command: {0}", introString)));
}
GrammarBuilder cmdIntro = new GrammarBuilder(introChoices);
// Define the arguments for the command to select foreground or background
// and to change their color as semantic values.
Choices fgOrbgChoice = new Choices();
GrammarBuilder backgroundGB=new GrammarBuilder("background");
backgroundGB.Append(new SemanticResultValue(true));
fgOrbgChoice.Add(backgroundGB);
fgOrbgChoice.Add((GrammarBuilder)new SemanticResultValue("foreground", false));
SemanticResultKey fgOrbgChoiceKey = new SemanticResultKey("BgOrFgBool", fgOrbgChoice);
Choices colorChoice = new Choices();
foreach (string colorName in System.Enum.GetNames(typeof(KnownColor)))
{
// Use implicit conversion of SemanticResultValue to GrammarBuilder.
colorChoice.Add(
(GrammarBuilder) (new SemanticResultValue(colorName, (Color.FromName(colorName)).Name)));
}
// Create a GrammarBuilder for CmdArgs to be appended to CmdIntro using
// semantic keys.
GrammarBuilder cmdArgs = new GrammarBuilder();
cmdArgs.Append(new SemanticResultKey("BgOrFgBool", fgOrbgChoice));
cmdArgs.AppendWildcard();
cmdArgs.Append(new SemanticResultKey("colorStringList", colorChoice));
GrammarBuilder cmds =
GrammarBuilder.Add(cmdIntro,
new GrammarBuilder(new SemanticResultKey("Cmd Args", cmdArgs)));
grammar = new Grammar(cmds);
grammar.Name = "Tree [Set,change,alter] [foreground,background] * color";
return grammar;
}
Hinweise
Wenn die von angegebene Zeichenfolge phrase
in der Erkennungs Logik verwendet wird, value
wird in der Semantik der erkannten Ausgabe festgelegt.
Im folgenden Code Fragment wird der Wert der erkannten Semantik hinzugefügt, wenn die Erkennungs Logik, die mit der- GrammarBuilder Instanz ( myGb
) erstellt wurde, die Zeichenfolge "My Hypotheken" verwendet, um die Eingabe zu identifizieren true
.
myGb.Append(new SemanticResultValue("my mortgage", true);