通过使用Message() API,您可以对消息的生命周期有更多的控制,可以显式地添加和删除消息。 如果您需要删除验证消息,而不是在越过保存边界时,或者用于显示与数据验证直接相关的用户体验的特定方面的信息消息,则可以使用此功能。
messageId = Message::Add(MessageSeverity::Informational, "The customer is marked as inactive");
在本例中,当页面上显示一条新记录时,可以清除该消息。
除了使用Message() API之外,您还可以使用Message::AddAction()方法,这样您就可以在发送到消息栏的消息中嵌入一个操作。 此方法支持添加与显示或操作菜单项关联的单个操作,然后可以将其可视化为Link按钮。
在下面的示例中,会为系统管理员触发一条消息,让他们知道批处理作业没有运行,然后公开一个操作,直接转到批处理作业页面。
MenuItemMessageAction actionData = new MenuItemMessageAction();
actionData.MenuItemName("BatchJob");
str jsonData = FormJsonSerializer::serializeClass(actionData);
int64 messageId = Message::AddAction(MessageSeverity::Informational, "The Test batch job is not currently running", "Go to Batch jobs", MessageActionType::DisplayMenuItem, jsonData);