我遵循了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();
}
它还会触发确认消息。我缺少什么吗?我想知道为什么添加.Field
和/或.AddRemainingFields
方法会使确认消息消失。
我看到的每个示例都使用带有自定义消息的.Confirm()
。 使用.Field()
或.AddRemainingFields()
时 请参阅下面的带注释的三明治机器人
例如,在我们的 Formflow 示例中,一个简单的 sanwich 机器人不使用.Field()
或.AddRemainingFields()
和自动确认工作。而带注释的山德维奇机器人使用.Field()
并使用.AddRemainingFields()
.Confirm
。
基本上,看起来您需要提出一个自定义确认实现,您可以在其中使用.Field()
并.AddRemainingFields()
祝您好运。