目录

Struct TopicId

命名空间
Microsoft.AutoGen.Contracts
程序集
Microsoft.AutoGen.Contracts.dll

表示一个主题标识符,它定义了广播消息的范围。代理运行时通过其广播 API 实现发布-订阅模型,其中消息必须以特定主题发布。

参见 Python 等效项:CloudEvents 类型规范

public struct TopicId
继承成员

构造函数

TopicId(string, string)

初始化 TopicId 结构的新实例。

public TopicId(string type, string source = "default")

参数

type string

主题的类型。

source string

事件的来源。如果未指定,则默认为 DefaultSource

TopicId((string Type, string Source))

从元组初始化 TopicId 结构的新实例。

public TopicId((string Type, string Source) kvPair)

参数

kvPair (string, string)

包含主题类型和来源的元组。

字段

DefaultSource

未明确提供来源时使用的默认来源值。

public const string DefaultSource = "default"

字段值

字符串

属性

Source

获取标识事件发生上下文的来源。这符合 CloudEvents 规范。

在此处了解更多信息:CloudEvents 来源

public readonly string Source { get; }

属性值

字符串

Type

获取此 TopicId 表示的事件类型。这符合 CloudEvents 规范。

必须匹配模式:^[\w-.:=]+$

在此处了解更多信息:CloudEvents 类型

public readonly string Type { get; }

属性值

字符串

方法

Equals(object?)

确定指定对象是否与当前 TopicId 相等。

public override bool Equals(object? obj)

参数

obj object

与当前实例进行比较的对象。

返回

bool

如果指定对象与当前 TopicId 相等,则为 true;否则为 false

FromStr(string)

将“type/source”格式的字符串转换为 TopicId

public static TopicId FromStr(string maybeTopicId)

参数

maybeTopicId string

主题 ID 字符串。

返回

TopicId

一个 TopicId 实例。

异常

FormatException

当字符串不是有效的“type/source”格式时抛出。

GetHashCode()

返回此 TopicId 的哈希代码。

public override int GetHashCode()

返回

int

当前实例的哈希代码。

IsWildcardMatch(TopicId)

确定给定 TopicId 是否与另一个主题匹配。

public bool IsWildcardMatch(TopicId other)

参数

other TopicId

要比较的主题 ID。

返回

bool

如果主题类型相等,则为 true;否则为 false

ToString()

返回 TopicId 的字符串表示形式。

public override string ToString()

返回

字符串

“type/source”格式的字符串。

运算符

explicit operator TopicId(string)

将字符串显式转换为 TopicId

public static explicit operator TopicId(string id)

参数

id string

主题 ID 的字符串表示形式。

返回

TopicId

一个 TopicId 实例。