Show / Hide Table of Contents

    ComplexMessage 类

    表示复合消息。

    继承
    System.Object
    ComplexMessage
    实现
    ISendable
    System.IEquatable<ComplexMessage>
    System.Collections.Generic.IList<MessageElement>
    System.Collections.Generic.ICollection<MessageElement>
    System.Collections.Generic.IReadOnlyList<MessageElement>
    System.Collections.Generic.IReadOnlyCollection<MessageElement>
    System.Collections.Generic.IEnumerable<MessageElement>
    System.Collections.IEnumerable
    继承成员
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    命名空间: HuajiTech.CoolQ.Messaging
    程序集: HuajiTech.CoolQ.Messaging.dll
    语法
    public class ComplexMessage : ISendable, IEquatable<ComplexMessage>, IList<MessageElement>, ICollection<MessageElement>, IReadOnlyList<MessageElement>, IReadOnlyCollection<MessageElement>, IEnumerable<MessageElement>, IEnumerable

    构造函数

    | 改善此文档 查看源代码

    ComplexMessage()

    初始化一个空的 ComplexMessage 类的新实例。

    声明
    public ComplexMessage()
    | 改善此文档 查看源代码

    ComplexMessage(MessageElement)

    以指定的 MessageElement 实例初始化一个 ComplexMessage 类的新实例。

    声明
    public ComplexMessage(MessageElement element)
    参数
    类型 名称 描述
    MessageElement element

    消息元素。

    | 改善此文档 查看源代码

    ComplexMessage(IEnumerable<MessageElement>)

    以指定的 MessageElement 集合初始化一个 ComplexMessage 类的新实例。

    声明
    public ComplexMessage(IEnumerable<MessageElement> elements)
    参数
    类型 名称 描述
    System.Collections.Generic.IEnumerable<MessageElement> elements

    MessageElement 集合。

    异常
    类型 条件
    System.ArgumentNullException

    elements 为 null。

    属性

    | 改善此文档 查看源代码

    Count

    声明
    public int Count { get; }
    属性值
    类型 描述
    System.Int32
    | 改善此文档 查看源代码

    IsReadOnly

    声明
    public bool IsReadOnly { get; }
    属性值
    类型 描述
    System.Boolean
    | 改善此文档 查看源代码

    Item[Int32]

    获取或设置指定索引处的 MessageElement 实例。

    声明
    public MessageElement this[int index] { get; set; }
    参数
    类型 名称 描述
    System.Int32 index

    要获取或设置的MessageElement 实例从 0 开始的索引。

    属性值
    类型 描述
    MessageElement
    异常
    类型 条件
    System.ArgumentOutOfRangeException

    index 小于 0。 或 index 等于或大于 Count。

    方法

    | 改善此文档 查看源代码

    Add(MessageElement)

    将 MessageElement 实例添加到 ComplexMessage 的结尾处。

    声明
    public ComplexMessage Add(MessageElement item)
    参数
    类型 名称 描述
    MessageElement item

    要添加到 ComplexMessage 末尾的实例。

    返回
    类型 描述
    ComplexMessage

    当前 ComplexMessage 实例。

    | 改善此文档 查看源代码

    Add(IEnumerable<MessageElement>)

    将指定 MessageElement 集合添加到 ComplexMessage 的末尾。

    声明
    public ComplexMessage Add(IEnumerable<MessageElement> collection)
    参数
    类型 名称 描述
    System.Collections.Generic.IEnumerable<MessageElement> collection

    应将其元素添加到 ComplexMessage 的末尾的集合。 集合自身不能为 null。

    返回
    类型 描述
    ComplexMessage

    当前 ComplexMessage 实例。

    异常
    类型 条件
    System.ArgumentNullException

    collection 为 null。

    | 改善此文档 查看源代码

    Clear()

    声明
    public void Clear()
    | 改善此文档 查看源代码

    CombinePlainText()

    将当前 ComplexMessage 实例中的所有连续的 PlainText 实例拼接为单个 PlainText 实例。

    声明
    public ComplexMessage CombinePlainText()
    返回
    类型 描述
    ComplexMessage

    一个新的 ComplexMessage 实例,包含已被拼接的 PlainText 实例。

    | 改善此文档 查看源代码

    Contains(MessageElement)

    声明
    public bool Contains(MessageElement item)
    参数
    类型 名称 描述
    MessageElement item
    返回
    类型 描述
    System.Boolean
    | 改善此文档 查看源代码

    CopyTo(MessageElement[], Int32)

    声明
    public void CopyTo(MessageElement[] array, int arrayIndex)
    参数
    类型 名称 描述
    MessageElement[] array
    System.Int32 arrayIndex
    | 改善此文档 查看源代码

    Equals(ComplexMessage)

    声明
    public bool Equals(ComplexMessage other)
    参数
    类型 名称 描述
    ComplexMessage other
    返回
    类型 描述
    System.Boolean
    | 改善此文档 查看源代码

    Equals(Object)

    声明
    public override bool Equals(object obj)
    参数
    类型 名称 描述
    System.Object obj
    返回
    类型 描述
    System.Boolean
    重写
    System.Object.Equals(System.Object)
    | 改善此文档 查看源代码

    FromString(String)

    创建一个包含指定的字符串的 ComplexMessage 实例。

    声明
    public static ComplexMessage FromString(string str)
    参数
    类型 名称 描述
    System.String str

    要包含的内容。

    返回
    类型 描述
    ComplexMessage
    | 改善此文档 查看源代码

    GetEnumerator()

    声明
    public IEnumerator<MessageElement> GetEnumerator()
    返回
    类型 描述
    System.Collections.Generic.IEnumerator<MessageElement>
    | 改善此文档 查看源代码

    GetHashCode()

    声明
    public override int GetHashCode()
    返回
    类型 描述
    System.Int32
    重写
    System.Object.GetHashCode()
    | 改善此文档 查看源代码

    GetPlainText(String)

    使用指定的分隔符将当前 ComplexMessage 实例中的所有 PlainText 实例拼接为字符串。

    声明
    public string GetPlainText(string separator = "")
    参数
    类型 名称 描述
    System.String separator

    要用作分隔符的字符串。

    返回
    类型 描述
    System.String

    一个由当前 ComplexMessage 实例中所有 PlainText 实例组成的字符串,这些字符串以 separator 分隔。 如果当前 ComplexMessage 实例不包含任何 PlainText 实例,则该方法返回 System.String.Empty。

    | 改善此文档 查看源代码

    IndexOf(MessageElement)

    声明
    public int IndexOf(MessageElement item)
    参数
    类型 名称 描述
    MessageElement item
    返回
    类型 描述
    System.Int32
    | 改善此文档 查看源代码

    Insert(Int32, MessageElement)

    将 MessageElement 插入到 ComplexMessage 的指定索引处。

    声明
    public ComplexMessage Insert(int index, MessageElement item)
    参数
    类型 名称 描述
    System.Int32 index

    应插入 item 的从零开始的索引。

    MessageElement item

    要插入的 MessageElement 实例。

    返回
    类型 描述
    ComplexMessage

    当前 ComplexMessage 实例。

    异常
    类型 条件
    System.ArgumentOutOfRangeException

    index 小于 0。 或 index 大于 Count。

    | 改善此文档 查看源代码

    Join(MessageElement, IEnumerable<ComplexMessage>)

    使用指定的分隔符串联 ComplexMessage 集合中的所有成员。

    声明
    public static ComplexMessage Join(MessageElement separator, IEnumerable<ComplexMessage> messages)
    参数
    类型 名称 描述
    MessageElement separator

    要用作分隔符的 MessageElement 实例。

    System.Collections.Generic.IEnumerable<ComplexMessage> messages

    一个包含要串联的 ComplexMessage 实例的集合。

    返回
    类型 描述
    ComplexMessage

    一个包含 messages 中所有成员的 ComplexMessage 实例,这些成员以 separator 分隔。 如果 messages 没有成员,则该方法返回一个空的 ComplexMessage 实例。

    异常
    类型 条件
    System.ArgumentNullException

    messages 为 null。

    | 改善此文档 查看源代码

    Parse(String, Boolean)

    将字符串解析为 ComplexMessage 实例。

    声明
    public static ComplexMessage Parse(string str, bool useEmoji = false)
    参数
    类型 名称 描述
    System.String str

    要解析的 ComplexMessage 实例的字符串表示形式。

    System.Boolean useEmoji

    如果要在返回的 ComplexMessage 实例中包含 Emoji 实例,则为 true;否则为 false。

    返回
    类型 描述
    ComplexMessage

    与字符串等效的 ComplexMessage 实例。

    | 改善此文档 查看源代码

    Remove(MessageElement)

    从 ComplexMessage 中移除特定 MessageElement 的第一个匹配项。

    声明
    public ComplexMessage Remove(MessageElement item)
    参数
    类型 名称 描述
    MessageElement item

    要从 ComplexMessage 中删除的实例。

    返回
    类型 描述
    ComplexMessage

    当前 ComplexMessage 实例。

    | 改善此文档 查看源代码

    RemoveAll(MessageElement)

    从 ComplexMessage 中移除特定 MessageElement 的所有匹配项。

    声明
    public ComplexMessage RemoveAll(MessageElement item)
    参数
    类型 名称 描述
    MessageElement item

    要从 ComplexMessage 中删除的实例。

    返回
    类型 描述
    ComplexMessage

    当前 ComplexMessage 实例。

    | 改善此文档 查看源代码

    RemoveAt(Int32)

    移除 ComplexMessage 的指定索引处的 MessageElement。

    声明
    public ComplexMessage RemoveAt(int index)
    参数
    类型 名称 描述
    System.Int32 index

    要移除的元素的从零开始的索引。

    返回
    类型 描述
    ComplexMessage

    当前 ComplexMessage 实例。

    | 改善此文档 查看源代码

    RemoveRange(Int32, Int32)

    从 ComplexMessage 中移除一定范围的 MessageElement。

    声明
    public ComplexMessage RemoveRange(int index, int count)
    参数
    类型 名称 描述
    System.Int32 index

    要移除的元素范围的从零开始的起始索引。

    System.Int32 count

    要移除的元素数。

    返回
    类型 描述
    ComplexMessage

    当前 ComplexMessage 实例。

    | 改善此文档 查看源代码

    Slice(Int32, Int32)

    声明
    public ComplexMessage Slice(int start, int count)
    参数
    类型 名称 描述
    System.Int32 start
    System.Int32 count
    返回
    类型 描述
    ComplexMessage
    | 改善此文档 查看源代码

    SplitPlainText(Func<String, IEnumerable<String>>)

    声明
    public ComplexMessage SplitPlainText(Func<string, IEnumerable<string>> split)
    参数
    类型 名称 描述
    System.Func<System.String, System.Collections.Generic.IEnumerable<System.String>> split
    返回
    类型 描述
    ComplexMessage
    | 改善此文档 查看源代码

    SplitPlainText(String[])

    基于数组中的字符串将当前 ComplexMessage 实例中的所有 PlainText 实例拆分为多个 PlainText 实例。

    声明
    public ComplexMessage SplitPlainText(params string[] separator)
    参数
    类型 名称 描述
    System.String[] separator

    分隔此 ComplexMessage 实例中 PlainText 实例的字符串数组、不包含分隔符的空数组或 null。

    返回
    类型 描述
    ComplexMessage

    一个 ComplexMessage 实例,其元素包含此 ComplexMessage 实例中的子 PlainText 实例,这些子子 PlainText 实例由 separator 中的一个或多个字符串分隔。

    | 改善此文档 查看源代码

    SplitPlainText(String[], StringSplitOptions)

    基于数组中的字符串将当前 ComplexMessage 实例中的所有 PlainText 实例拆分为多个 PlainText 实例。 可以指定子 PlainText 实例是否包含空数组元素。

    声明
    public ComplexMessage SplitPlainText(string[] separator, StringSplitOptions options)
    参数
    类型 名称 描述
    System.String[] separator

    分隔此 ComplexMessage 实例中 PlainText 实例的字符串数组、不包含分隔符的空数组或 null。

    System.StringSplitOptions options

    要省略返回的数组中的空数组元素,则为 System.StringSplitOptions.RemoveEmptyEntries; 要包含返回的数组中的空数组元素,则为 System.StringSplitOptions.None。

    返回
    类型 描述
    ComplexMessage

    一个 ComplexMessage 实例,其元素包含此 ComplexMessage 实例中的子 PlainText 实例,这些子 PlainText 实例由 separator 中的一个或多个字符串分隔。

    异常
    类型 条件
    System.ArgumentException

    options 不是 System.StringSplitOptions 值之一。

    | 改善此文档 查看源代码

    ToSendableString()

    声明
    public string ToSendableString()
    返回
    类型 描述
    System.String
    | 改善此文档 查看源代码

    TryRemove(MessageElement)

    尝试从 ComplexMessage 中移除特定 MessageElement 的第一个匹配项。

    声明
    public bool TryRemove(MessageElement item)
    参数
    类型 名称 描述
    MessageElement item

    要从 ComplexMessage 中删除的实例。

    返回
    类型 描述
    System.Boolean

    如果成功移除了 item,则为 true;否则为 false。 如果在 ComplexMessage 中没有找到 item,则此方法也会返回 false。

    运算符

    | 改善此文档 查看源代码

    Addition(ComplexMessage, ComplexMessage)

    声明
    public static ComplexMessage operator +(ComplexMessage left, ComplexMessage right)
    参数
    类型 名称 描述
    ComplexMessage left
    ComplexMessage right
    返回
    类型 描述
    ComplexMessage
    | 改善此文档 查看源代码

    Addition(ComplexMessage, MessageElement)

    声明
    public static ComplexMessage operator +(ComplexMessage left, MessageElement right)
    参数
    类型 名称 描述
    ComplexMessage left
    MessageElement right
    返回
    类型 描述
    ComplexMessage
    | 改善此文档 查看源代码

    Addition(MessageElement, ComplexMessage)

    声明
    public static ComplexMessage operator +(MessageElement left, ComplexMessage right)
    参数
    类型 名称 描述
    MessageElement left
    ComplexMessage right
    返回
    类型 描述
    ComplexMessage
    | 改善此文档 查看源代码

    Equality(ComplexMessage, ComplexMessage)

    声明
    public static bool operator ==(ComplexMessage left, ComplexMessage right)
    参数
    类型 名称 描述
    ComplexMessage left
    ComplexMessage right
    返回
    类型 描述
    System.Boolean
    | 改善此文档 查看源代码

    Implicit(String to ComplexMessage)

    声明
    public static implicit operator ComplexMessage(string str)
    参数
    类型 名称 描述
    System.String str
    返回
    类型 描述
    ComplexMessage
    | 改善此文档 查看源代码

    Inequality(ComplexMessage, ComplexMessage)

    声明
    public static bool operator !=(ComplexMessage left, ComplexMessage right)
    参数
    类型 名称 描述
    ComplexMessage left
    ComplexMessage right
    返回
    类型 描述
    System.Boolean
    | 改善此文档 查看源代码

    Subtraction(ComplexMessage, MessageElement)

    声明
    public static ComplexMessage operator -(ComplexMessage left, MessageElement right)
    参数
    类型 名称 描述
    ComplexMessage left
    MessageElement right
    返回
    类型 描述
    ComplexMessage

    显示接口实现

    | 改善此文档 查看源代码

    ICollection<MessageElement>.Add(MessageElement)

    声明
    void ICollection<MessageElement>.Add(MessageElement item)
    参数
    类型 名称 描述
    MessageElement item
    | 改善此文档 查看源代码

    ICollection<MessageElement>.Remove(MessageElement)

    声明
    bool ICollection<MessageElement>.Remove(MessageElement item)
    参数
    类型 名称 描述
    MessageElement item
    返回
    类型 描述
    System.Boolean
    | 改善此文档 查看源代码

    IList<MessageElement>.Insert(Int32, MessageElement)

    声明
    void IList<MessageElement>.Insert(int index, MessageElement item)
    参数
    类型 名称 描述
    System.Int32 index
    MessageElement item
    | 改善此文档 查看源代码

    IList<MessageElement>.RemoveAt(Int32)

    声明
    void IList<MessageElement>.RemoveAt(int index)
    参数
    类型 名称 描述
    System.Int32 index
    | 改善此文档 查看源代码

    IEnumerable.GetEnumerator()

    声明
    IEnumerator IEnumerable.GetEnumerator()
    返回
    类型 描述
    System.Collections.IEnumerator

    实现

    ISendable
    System.IEquatable<T>
    System.Collections.Generic.IList<T>
    System.Collections.Generic.ICollection<T>
    System.Collections.Generic.IReadOnlyList<T>
    System.Collections.Generic.IReadOnlyCollection<T>
    System.Collections.Generic.IEnumerable<T>
    System.Collections.IEnumerable

    扩展方法

    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    ComplexMessageExtensions.Deconstruct(ComplexMessage, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement, out MessageElement)
    MessageElementCollectionExtensions.ToComplexMessage(IEnumerable<MessageElement>)
    MessageElementCollectionExtensions.ToComplexMessage(IEnumerable<MessageElement>, MessageElement)
    • 改善此文档
    • 查看源代码
    Back to top 本文档使用 CC BY-NC-SA 4.0 进行许可。