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
Properties
Elements
获取或设置备注模块的元素。
public IList<IElementBuilder> Elements { get; set; }
Property Value
Type
获取此构建器构建的模块的类型。
public ModuleType Type { get; }
Property Value
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
Elements 为
null
。- ArgumentException
Elements 的元素数量超过了 MaxElementCount。
- ArgumentException
Elements 包含一个既不是 PlainTextElementBuilder, 也不是 KMarkdownElementBuilder 或 ImageElementBuilder 的元素。
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
Equals(object?)
Determines whether the specified object is equal to the current object.
public override bool Equals(object? obj)
Parameters
obj
objectThe object to compare with the current object.
Returns
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
ContextModuleBuilderright
ContextModuleBuilder
Returns
- bool
如果两个 ContextModuleBuilder 相等,则为
true
;否则为false
。
operator !=(ContextModuleBuilder?, ContextModuleBuilder?)
判定两个 ContextModuleBuilder 是否不相等。
public static bool operator !=(ContextModuleBuilder? left, ContextModuleBuilder? right)
Parameters
left
ContextModuleBuilderright
ContextModuleBuilder
Returns
- bool
如果两个 ContextModuleBuilder 不相等,则为
true
;否则为false
。