目录

结构体 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 Type, string Key)

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

字段

DefaultSource

未显式提供来源时使用的默认来源值。

public const string DefaultSource = "default"

字段值

string

属性

Source

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

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

public readonly string Source { get; }

属性值

string

Type

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

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

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

public readonly string Type { get; }

属性值

string

方法

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()

返回值

string

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

运算符

explicit operator TopicId(string)

将字符串显式转换为 TopicId

public static explicit operator TopicId(string id)

参数

id string

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

返回值

TopicId

TopicId 的实例。