public virtual async Task <IEnumerable <IMessageBase> > GetReply(ChainEventArgs chat) { if (nextChain != null) { try { return(await nextChain.GetReply(chat)); } catch (Exception ex) { var name = nextChain.GetType().Name; Logger.Instance.AddLog(LogType.Error, ex.ToString()); return(new[] { new PlainMessage("处理指令时发生错误!" + name + ".GetReply()" + "! 错误详情: " + ex.Message) }); } } else { return(new IMessageBase[] { }); } }