Syn Bot /OSCOVA Action(动作)(10)

是个啥呢?简单说就是给方法命名,这个命名是全局唯一的。然后其他intent可以通过唯一名称调用指定的方法

创建一个Action

class AppActionsDialog : Dialog
{
    [Action(ID = "display.record.action")] public void DisplayRecord(Context context, Result result) { //Do something here. } }

当然也可以用SIML调用,这个我们后续再介绍

<Siml>
  <Dialog Name="action-dialog"> <Intent Name="action-intent"> <Expression Value="Display all records"/> <Action ID="display.record.action"/> </Intent> </Dialog> </Siml>

举例,从其他ConfirmCoupon调用RequestCouponAction

[Action(ID = "request-coupon")]
public void RequestCouponAction(Context context, Result result) { result.SendResponse("Please enter your coupon code."); context.Add("wait-coupon"); } //If user says "Yes" that he has a coupon code then call action. [Expression("@sys.positive")] [Context("confirm-coupon")] public void ConfirmCoupon(Context context, Result result) { result.Bot.Actions["request-coupon"].Invoke(context, result); }

/。。没了。

猜你喜欢

转载自www.cnblogs.com/mrtiny/p/9082156.html