GrammarBuilder.Add 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
创建一个包含两个语法元素序列的新 GrammarBuilder 内容。
重载
| 名称 | 说明 |
|---|---|
| Add(Choices, GrammarBuilder) |
创建一个包含Choices对象后跟GrammarBuilder对象的新GrammarBuilder对象。 |
| Add(GrammarBuilder, Choices) |
创建一个包含GrammarBuilder对象后跟Choices对象的新GrammarBuilder对象。 |
| Add(GrammarBuilder, GrammarBuilder) |
创建一个包含两GrammarBuilder个对象的序列的新GrammarBuilder对象。 |
| Add(GrammarBuilder, String) |
创建一个包含GrammarBuilder后跟短语的对象的新GrammarBuilder对象。 |
| Add(String, GrammarBuilder) |
创建一个包含后跟GrammarBuilder对象的短语的新GrammarBuilder内容。 |
注解
静态 Add 方法提供了另一种机制,可以通过该机制组合各种类型来创建语法 GrammarBuilder的多样性和灵活性。 这些方法对应于也在类上GrammarBuilder定义的静态Addition方法。 参数的顺序决定了新 GrammarBuilder元素的顺序。
还可以从 Choices、SemanticResultKey、 SemanticResultValue和 String 对象获取 AGrammarBuilder。 有关详细信息,请参阅 Implicit 和 Addition 运算符。
重要
当使用包含具有相同键名的重复语义元素或多个语义元素的语音识别语法时,语音识别器可能会引发异常,这些元素可以重复修改同一语义元素的值。
有关生成和使用语音识别语法的详细信息,请参阅 语音识别。
Add(Choices, GrammarBuilder)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
创建一个包含Choices对象后跟GrammarBuilder对象的新GrammarBuilder对象。
public:
static System::Speech::Recognition::GrammarBuilder ^ Add(System::Speech::Recognition::Choices ^ choices, System::Speech::Recognition::GrammarBuilder ^ builder);
public static System.Speech.Recognition.GrammarBuilder Add(System.Speech.Recognition.Choices choices, System.Speech.Recognition.GrammarBuilder builder);
static member Add : System.Speech.Recognition.Choices * System.Speech.Recognition.GrammarBuilder -> System.Speech.Recognition.GrammarBuilder
Public Shared Function Add (choices As Choices, builder As GrammarBuilder) As GrammarBuilder
参数
- choices
- Choices
第一个语法元素,表示一组替代项。
- builder
- GrammarBuilder
第二个语法元素。
返回
后跟元素的choices元素序列的 builder AGrammarBuilder。
注解
GrammarBuilder 支持从以下类进行隐式转换:
此方法接受上面 builder 列出的参数对象。
有关详细信息,请参阅 Implicit 和 Addition 运算符。
重要
组合 Choices 对象和 GrammarBuilder 包含 SemanticResultValue 或 SemanticResultKey 实例的对象时,请确保避免创建具有相同键名或多个语义元素的重复语义元素,这些元素可以重复修改 Value 对象的属性 SemanticValue 。 如果遇到这些情况,语音识别器可能会引发异常。 有关生成包含语义信息的语音识别语法的详细信息,请参阅 向 GrammarBuilder 语法添加语义。
另请参阅
适用于
Add(GrammarBuilder, Choices)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
创建一个包含GrammarBuilder对象后跟Choices对象的新GrammarBuilder对象。
public:
static System::Speech::Recognition::GrammarBuilder ^ Add(System::Speech::Recognition::GrammarBuilder ^ builder, System::Speech::Recognition::Choices ^ choices);
public static System.Speech.Recognition.GrammarBuilder Add(System.Speech.Recognition.GrammarBuilder builder, System.Speech.Recognition.Choices choices);
static member Add : System.Speech.Recognition.GrammarBuilder * System.Speech.Recognition.Choices -> System.Speech.Recognition.GrammarBuilder
Public Shared Function Add (builder As GrammarBuilder, choices As Choices) As GrammarBuilder
参数
- builder
- GrammarBuilder
第一个语法元素。
- choices
- Choices
第二个语法元素,表示一组替代项。
返回
后跟元素的builder元素序列的 choices AGrammarBuilder。
示例
以下示例创建一个语音识别语法,该语法可以识别两个短语“制作背景 颜色”和“将背景设置为 颜色”,其中 颜色 是从一组颜色中选择的。 各种类型用于生成最终语法,如 StringChoices 和GrammarBuilder对象。 对方法的调用 Add 中的显式强制转换运算符是可选的。
private Grammar CreateColorGrammar()
{
// Create a set of color choices.
Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
// Create grammar builders for the two versions of the phrase.
GrammarBuilder makePhrase =
GrammarBuilder.Add((GrammarBuilder)"Make background", colorChoice);
GrammarBuilder setPhrase =
GrammarBuilder.Add("Set background to", (GrammarBuilder)colorChoice);
// Create a Choices for the two alternative phrases, convert the Choices
// to a GrammarBuilder, and construct the grammar from the result.
Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
GrammarBuilder bothPhrases = new GrammarBuilder(bothChoices);
Grammar grammar = new Grammar(bothPhrases);
grammar.Name = "backgroundColor";
return grammar;
}
注解
GrammarBuilder 支持从以下类进行隐式转换:
此方法接受上面 builder 列出的参数对象。
有关详细信息,请参阅 Implicit 和 Addition 运算符。
重要
将包含或实例的对象与其他语法元素组合ChoicesGrammarBuilder在一起时,请确保避免创建具有相同键名或多个语义元素的重复语义元素,这些元素可以重复修改Value对象的属性SemanticValue。SemanticResultKeySemanticResultValue 如果遇到这些情况,语音识别器可能会引发异常。
另请参阅
适用于
Add(GrammarBuilder, GrammarBuilder)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
创建一个包含两GrammarBuilder个对象的序列的新GrammarBuilder对象。
public:
static System::Speech::Recognition::GrammarBuilder ^ Add(System::Speech::Recognition::GrammarBuilder ^ builder1, System::Speech::Recognition::GrammarBuilder ^ builder2);
public static System.Speech.Recognition.GrammarBuilder Add(System.Speech.Recognition.GrammarBuilder builder1, System.Speech.Recognition.GrammarBuilder builder2);
static member Add : System.Speech.Recognition.GrammarBuilder * System.Speech.Recognition.GrammarBuilder -> System.Speech.Recognition.GrammarBuilder
Public Shared Function Add (builder1 As GrammarBuilder, builder2 As GrammarBuilder) As GrammarBuilder
参数
- builder1
- GrammarBuilder
第一个语法元素。
- builder2
- GrammarBuilder
第二个语法元素。
返回
后跟元素的builder1元素序列的 builder2 AGrammarBuilder。
示例
以下示例创建一个语音识别语法,该语法可以识别两个短语“制作背景 颜色”和“将背景设置为 颜色”,其中 颜色 是从一组颜色中选择的。 各种类型用于生成最终语法,如 StringChoices 和GrammarBuilder对象。 对方法的调用 Add 中的显式强制转换运算符是可选的。
private Grammar CreateColorGrammar()
{
// Create a set of color choices.
Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
// Create grammar builders for the two versions of the phrase.
GrammarBuilder makePhrase =
GrammarBuilder.Add((GrammarBuilder)"Make background", colorChoice);
GrammarBuilder setPhrase =
GrammarBuilder.Add("Set background to", (GrammarBuilder)colorChoice);
// Create a Choices for the two alternative phrases, convert the Choices
// to a GrammarBuilder, and construct the grammar from the result.
Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
GrammarBuilder bothPhrases = new GrammarBuilder(bothChoices);
Grammar grammar = new Grammar(bothPhrases);
grammar.Name = "backgroundColor";
return grammar;
}
注解
GrammarBuilder 支持从以下类进行隐式转换:
此方法接受上面列出的对象或builder1builder2参数。
有关详细信息,请参阅 Implicit 和 Addition 运算符。
重要
将包含或实例的对象与其他语法元素组合ChoicesGrammarBuilder在一起时,请确保避免创建具有相同键名或多个语义元素的重复语义元素,这些元素可以重复修改Value对象的属性SemanticValue。SemanticResultKeySemanticResultValue 如果遇到这些情况,语音识别器可能会引发异常。
另请参阅
适用于
Add(GrammarBuilder, String)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
创建一个包含GrammarBuilder后跟短语的对象的新GrammarBuilder对象。
public:
static System::Speech::Recognition::GrammarBuilder ^ Add(System::Speech::Recognition::GrammarBuilder ^ builder, System::String ^ phrase);
public static System.Speech.Recognition.GrammarBuilder Add(System.Speech.Recognition.GrammarBuilder builder, string phrase);
static member Add : System.Speech.Recognition.GrammarBuilder * string -> System.Speech.Recognition.GrammarBuilder
Public Shared Function Add (builder As GrammarBuilder, phrase As String) As GrammarBuilder
参数
- builder
- GrammarBuilder
第一个语法元素。
- phrase
- String
第二个语法元素,表示单词序列。
返回
后跟元素的builder元素序列的 phrase AGrammarBuilder。
示例
以下示例创建一个语音识别语法,该语法可以识别两个短语“制作背景 颜色”和“将背景设置为 颜色”,其中 颜色 是从一组颜色中选择的。 各种类型用于生成最终语法,如 StringChoices 和GrammarBuilder对象。 对方法的调用 Add 中的显式强制转换运算符是可选的。
private Grammar CreateColorGrammar()
{
// Create a set of color choices.
Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
// Create grammar builders for the two versions of the phrase.
GrammarBuilder makePhrase =
GrammarBuilder.Add((GrammarBuilder)"Make background", colorChoice);
GrammarBuilder setPhrase =
GrammarBuilder.Add("Set background to", (GrammarBuilder)colorChoice);
// Create a Choices for the two alternative phrases, convert the Choices
// to a GrammarBuilder, and construct the grammar from the result.
Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
GrammarBuilder bothPhrases = new GrammarBuilder(bothChoices);
Grammar grammar = new Grammar(bothPhrases);
grammar.Name = "backgroundColor";
return grammar;
}
注解
GrammarBuilder 支持从以下类进行隐式转换:
此方法接受上面 builder 列出的参数对象。
有关详细信息,请参阅 Implicit 和 Addition 运算符。
另请参阅
适用于
Add(String, GrammarBuilder)
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
- Source:
- GrammarBuilder.cs
创建一个包含后跟GrammarBuilder对象的短语的新GrammarBuilder内容。
public:
static System::Speech::Recognition::GrammarBuilder ^ Add(System::String ^ phrase, System::Speech::Recognition::GrammarBuilder ^ builder);
public static System.Speech.Recognition.GrammarBuilder Add(string phrase, System.Speech.Recognition.GrammarBuilder builder);
static member Add : string * System.Speech.Recognition.GrammarBuilder -> System.Speech.Recognition.GrammarBuilder
Public Shared Function Add (phrase As String, builder As GrammarBuilder) As GrammarBuilder
参数
- phrase
- String
第一个语法元素,表示单词序列。
- builder
- GrammarBuilder
第二个语法元素。
返回
后跟元素的phrase元素序列的 builder AGrammarBuilder。
示例
以下示例创建一个语音识别语法,该语法可以识别两个短语“制作背景 颜色”和“将背景设置为 颜色”,其中 颜色 是从一组颜色中选择的。 各种类型用于生成最终语法,如 StringChoices 和GrammarBuilder对象。 对方法的调用 Add 中的显式强制转换运算符是可选的。
private Grammar CreateColorGrammar()
{
// Create a set of color choices.
Choices colorChoice = new Choices(new string[] {"red", "green", "blue"});
// Create grammar builders for the two versions of the phrase.
GrammarBuilder makePhrase =
GrammarBuilder.Add((GrammarBuilder)"Make background", colorChoice);
GrammarBuilder setPhrase =
GrammarBuilder.Add("Set background to", (GrammarBuilder)colorChoice);
// Create a Choices for the two alternative phrases, convert the Choices
// to a GrammarBuilder, and construct the grammar from the result.
Choices bothChoices = new Choices(new GrammarBuilder[] {makePhrase, setPhrase});
GrammarBuilder bothPhrases = new GrammarBuilder(bothChoices);
Grammar grammar = new Grammar(bothPhrases);
grammar.Name = "backgroundColor";
return grammar;
}
注解
GrammarBuilder 支持从以下类进行隐式转换:
此方法接受上面 builder 列出的参数对象。
有关详细信息,请参阅 Implicit 和 Addition 运算符。