Choices 构造函数
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
初始化 Choices 类的新实例。
重载
Choices() |
初始化包含空备选项集的 Choices 类的新实例。 |
Choices(GrammarBuilder[]) |
从包含一个或多个 Choices 对象数组初始化 GrammarBuilder 类的新实例。 |
Choices(String[]) |
示例
以下示例使用 Choices 对象创建两个替代项列表。
第一个 Choices 对象是从 对象的数组构造的 String 。 另 Choices 一个对象是从已由强制转换隐式转换的对象 GrammarBuilder 数组构造的。
该示例使用 GrammarBuilder 对象来组合一个短语,使用 Choices 对象和两个附加字符串,这些字符串可用于识别“在 [phoneType] 电话上调用 [contactlList] ”形式的语音输入,例如“使用手机呼叫 Jane”。
public GrammarBuilder ChoicesConstructor2 ()
{
GrammarBuilder gb = new GrammarBuilder ();
Choices phoneType = new Choices (new string[] {"cell", "home", "work"});
Choices contactList = new Choices (new GrammarBuilder[] {(GrammarBuilder) "Mark", (GrammarBuilder) "Jane", (GrammarBuilder) "Frank"});
gb.Append ("Call");
gb.Append (contactList);
gb.Append ("on");
gb.Append (phoneType);
gb.Append ("phone");
return gb;
}
注解
可以使用 Choices 无参数构造函数构造对象, (该构造函数从一组 String 对象或一组 GrammarBuilder 对象返回) 空对象。
GrammarBuilder由于 对象支持从 SemanticResultValue 和 SemanticResultKey的隐式转换,Choices因此可以使用强制转换从这些 对象的数组构造 。
Choices()
- Source:
- Choices.cs
- Source:
- Choices.cs
初始化包含空备选项集的 Choices 类的新实例。
public:
Choices();
public Choices ();
Public Sub New ()
示例
以下示例使用 Choices 和 GrammarBuilder 对象创建可用于识别语音输入的短语,例如“在单元格上呼叫 Anne”和“在其工作电话上呼叫 James”。 该示例使用从 Choices 和 String 到 GrammarBuilder的隐式强制转换。
public Grammar CreatePhonePhrase()
{
// Create alternatives for female names and add a phrase.
GrammarBuilder females = new Choices(new string[] { "Anne", "Mary" });
females.Append("on her");
// Create alternatives for male names and add a phrase.
GrammarBuilder males = new Choices(new string[] { "James", "Sam" });
males.Append("on his");
// Create a Choices object that contains an array of alternative
// GrammarBuilder objects.
Choices people = new Choices();
people.Add(new Choices(new GrammarBuilder[] {females, males}));
// Create a Choices object that contains a set of alternative phone types.
Choices phoneType = new Choices();
phoneType.Add(new string[] { "cell", "home", "work" });
// Construct the phrase.
GrammarBuilder gb = new GrammarBuilder();
gb.Append("call");
gb.Append(people);
gb.Append(phoneType);
gb.Append(new GrammarBuilder("phone"), 0, 1);
return new Grammar(gb);
}
注解
此构造函数返回一组有效的空替代项。 可以使用任何 Add 方法添加替代项。
另请参阅
适用于
Choices(GrammarBuilder[])
- Source:
- Choices.cs
- Source:
- Choices.cs
从包含一个或多个 Choices 对象数组初始化 GrammarBuilder 类的新实例。
public:
Choices(... cli::array <System::Speech::Recognition::GrammarBuilder ^> ^ alternateChoices);
public Choices (params System.Speech.Recognition.GrammarBuilder[] alternateChoices);
new System.Speech.Recognition.Choices : System.Speech.Recognition.GrammarBuilder[] -> System.Speech.Recognition.Choices
Public Sub New (ParamArray alternateChoices As GrammarBuilder())
参数
- alternateChoices
- GrammarBuilder[]
包含替代组的数组。
示例
以下示例使用 Choices
和 GrammarBuilder 对象为诸如“在单元格上呼叫 Anne”和“在其工作电话上呼叫 James”等短语创建 Grammar 。 该示例使用从 Choices
和 String 到 GrammarBuilder的隐式强制转换。
public Grammar CreatePhonePhrase()
{
// Create alternatives for female names and add a phrase.
GrammarBuilder females = new Choices(new string[] { "Anne", "Mary" });
females.Append("on her");
// Create alternatives for male names and add a phrase.
GrammarBuilder males = new Choices(new string[] { "James", "Sam" });
males.Append("on his");
// Create a Choices object that contains an array of alternative
// GrammarBuilder objects.
Choices people = new Choices();
people.Add(new Choices(new GrammarBuilder[] {females, males}));
// Create a Choices object that contains a set of alternative phone types.
Choices phoneType = new Choices();
phoneType.Add(new string[] { "cell", "home", "work" });
// Construct the phrase.
GrammarBuilder gb = new GrammarBuilder();
gb.Append("call");
gb.Append(people);
gb.Append(phoneType);
gb.Append(new GrammarBuilder("phone"), 0, 1);
return new Grammar(gb);
}
注解
中的每个 GrammarBuilder 定义 alternateChoices
一个替代项。 如果 alternateChoices
是空数组,则构造函数返回一组空的替代项。 可以使用任何 Add 方法添加替代项。
当 为 null
或任何数组元素为 null
时alternateChoices
,构造函数将引发 ArgumentNullException 。
GrammarBuilder由于 类支持通过正确使用强制转换将 、 SemanticResultValue和 SemanticResultKey 对象隐GrammarBuilder式转换为Choices实例,因此此构造函数还可用于从这些对象的任意组合的列表创建 Choices 对象。
另请参阅
适用于
Choices(String[])
- Source:
- Choices.cs
- Source:
- Choices.cs
public:
Choices(... cli::array <System::String ^> ^ phrases);
public Choices (params string[] phrases);
new System.Speech.Recognition.Choices : string[] -> System.Speech.Recognition.Choices
Public Sub New (ParamArray phrases As String())
参数
- phrases
- String[]
包含替代组的数组。
示例
以下示例使用 Choices 和 GrammarBuilder 对象为诸如“在单元格上呼叫 Anne”和“在其工作电话上呼叫 James”等短语创建 Grammar 。 该示例使用从 Choices
和 String 到 GrammarBuilder的隐式强制转换。
public Grammar CreatePhonePhrase()
{
// Create alternatives for female names and add a phrase.
GrammarBuilder females = new Choices(new string[] { "Anne", "Mary" });
females.Append("on her");
// Create alternatives for male names and add a phrase.
GrammarBuilder males = new Choices(new string[] { "James", "Sam" });
males.Append("on his");
// Create a Choices object that contains an array of alternative
// GrammarBuilder objects.
Choices people = new Choices();
people.Add(new Choices(new GrammarBuilder[] {females, males}));
// Create a Choices object that contains a set of alternative phone types.
Choices phoneType = new Choices();
phoneType.Add(new string[] { "cell", "home", "work" });
// Construct the phrase.
GrammarBuilder gb = new GrammarBuilder();
gb.Append("call");
gb.Append(people);
gb.Append(phoneType);
gb.Append(new GrammarBuilder("phone"), 0, 1);
return new Grammar(gb);
}
注解
中的每个 String 定义 phrases
一个替代项。 语音识别引擎可以使用字符串数组中的任何一个项来匹配语音输入。 如果 phrases
是空数组,则构造函数返回一组空的替代项。 可以使用任何 Add 方法添加替代项。
当 为 null
或任一ArgumentNullException数组元素为 null
时phrases
,构造函数将引发 。 如果数组中的任何元素是空字符串 (“”) ,则构造函数将引发 ArgumentException 。