1

我遵循了 HotelBol 教程,主要思想是我有一个 FormFlow。在模型之后,我添加了一个名为 BedSize 的字段(它是一个枚举),然后我添加了所有剩余的字段。到目前为止一切顺利,一切正常。

public static IForm<RoomReservation> BuildForm()
{
    return new FormBuilder<RoomReservation>()
        .Message("Welcome to the hotel reservation bot!")
        .Field(nameof(BedSize))
        .AddRemainingFields()
        .Build();
}

我的问题是我最终希望从确认消息中获得默认确认。我面临的问题是 FormBuilder 中的 Build 方法具有该确认,但对我来说,它没有出现。

但是,如果我将代码更改为:

public static IForm<RoomReservation> BuildForm()
{
    return new FormBuilder<RoomReservation>()
        .Message("Welcome to the hotel reservation bot!")
        .Build();
}

它还会触发确认消息。有什么我想念的吗?我想知道为什么添加.Fieldand/or.AddRemainingFields方法会使确认消息消失。

4

1 回答 1

0

我看到的每个示例都使用.Confirm()带有自定义消息的 a。使用时.Field().AddRemainingFields()查看下面带注释的三明治机器人

例如,在我们的Simple sanwich bot的 formflow 示例中,不使用.Field()or.AddRemainingFields()并且自动确认工作。而Annotated Shanwich Bot使用.Field()并被.AddRemainingFields() .Confirm使用。

基本上,您似乎需要在您使用的地方提出一个自定义确认实现,.Field()祝您.AddRemainingFields()好运。

于 2017-07-05T21:56:40.983 回答