Table of Contents

Class ContextModuleBuilder

Namespace
Kook
Assembly
Kook.Net.Core.dll

用来构建 ContextModule 模块的构建器。

public class ContextModuleBuilder : IModuleBuilder, IEquatable<ContextModuleBuilder>, IEquatable<IModuleBuilder>
Inheritance
ContextModuleBuilder
Implements
Inherited Members

Constructors

ContextModuleBuilder()

初始化一个 ContextModuleBuilder 类的新实例。

public ContextModuleBuilder()

ContextModuleBuilder(IList<IElementBuilder>)

初始化一个 ContextModuleBuilder 类的新实例。

public ContextModuleBuilder(IList<IElementBuilder> elements)

Parameters

elements IList<IElementBuilder>

备注模块要包含的元素。

Fields

MaxElementCount

元素的最大数量。

public const int MaxElementCount = 10

Field Value

int

Properties

Elements

获取或设置备注模块的元素。

public IList<IElementBuilder> Elements { get; set; }

Property Value

IList<IElementBuilder>

Type

获取此构建器构建的模块的类型。

public ModuleType Type { get; }

Property Value

ModuleType

Methods

AddElement(ImageElementBuilder)

添加一个图片元素到备注模块。

public ContextModuleBuilder AddElement(ImageElementBuilder field)

Parameters

field ImageElementBuilder

要添加的图片元素。

Returns

ContextModuleBuilder

当前构建器。

AddElement(KMarkdownElementBuilder)

添加一个 KMarkdown 元素到备注模块。

public ContextModuleBuilder AddElement(KMarkdownElementBuilder field)

Parameters

field KMarkdownElementBuilder

要添加的 KMarkdown 元素。

Returns

ContextModuleBuilder

当前构建器。

AddElement(PlainTextElementBuilder)

添加一个纯文本元素到备注模块。

public ContextModuleBuilder AddElement(PlainTextElementBuilder field)

Parameters

field PlainTextElementBuilder

要添加的纯文本元素。

Returns

ContextModuleBuilder

当前构建器。

AddElement<T>(Action<T>?)

添加一个元素到备注模块。

public ContextModuleBuilder AddElement<T>(Action<T>? action = null) where T : IElementBuilder, new()

Parameters

action Action<T>

一个包含对要添加的新创建的元素进行配置的操作的委托。

Returns

ContextModuleBuilder

当前构建器。

Type Parameters

T

要添加的元素的类型。

Build()

构建当前构建器为一个 ContextModule 对象。

public ContextModule Build()

Returns

ContextModule

由当前构建器表示的属性构建的 ContextModule 对象。

Exceptions

ArgumentNullException

Elementsnull

ArgumentException

Elements 的元素数量超过了 MaxElementCount

ArgumentException

Elements 包含一个既不是 PlainTextElementBuilder, 也不是 KMarkdownElementBuilderImageElementBuilder 的元素。

Equals(ContextModuleBuilder?)

Indicates whether the current object is equal to another object of the same type.

public bool Equals(ContextModuleBuilder? contextModuleBuilder)

Parameters

contextModuleBuilder ContextModuleBuilder

Returns

bool

true if the current object is equal to the other parameter; otherwise, false.

Equals(object?)

Determines whether the specified object is equal to the current object.

public override bool Equals(object? obj)

Parameters

obj object

The object to compare with the current object.

Returns

bool

true if the specified object is equal to the current object; otherwise, false.

GetHashCode()

Serves as the default hash function.

public override int GetHashCode()

Returns

int

A hash code for the current object.

Operators

operator ==(ContextModuleBuilder?, ContextModuleBuilder?)

判定两个 ContextModuleBuilder 是否相等。

public static bool operator ==(ContextModuleBuilder? left, ContextModuleBuilder? right)

Parameters

left ContextModuleBuilder
right ContextModuleBuilder

Returns

bool

如果两个 ContextModuleBuilder 相等,则为 true;否则为 false

operator !=(ContextModuleBuilder?, ContextModuleBuilder?)

判定两个 ContextModuleBuilder 是否不相等。

public static bool operator !=(ContextModuleBuilder? left, ContextModuleBuilder? right)

Parameters

left ContextModuleBuilder
right ContextModuleBuilder

Returns

bool

如果两个 ContextModuleBuilder 不相等,则为 true;否则为 false