SfcKey 类

定义

SfcKey 类是每个 SfcInstance 派生对象必须具有的所有嵌套键类的基类。 它实现相等和哈希,但不能进行比较,因为密钥只需要知道它们是否相等。

构造密钥后,键将不可变,因此密钥不应包含可在 Key 对象的生存期内更改的数据。 请勿使用字段(s)作为密钥的一部分,该键不是密钥所表示标识的一部分。 我们可以通过在密钥的内部属性上禁止 set() 来强制执行此操作。

通过实现以下方法解决任何排序或排序规则需求:

  1. SfcKey 派生类上的 IComparable
  2. SfcCollection 派生集合类上的 IComparer 或 IComparer<T>
public abstract class SfcKey : IEquatable<Microsoft.SqlServer.Management.Sdk.Sfc.SfcKey>
type SfcKey = class
    interface IEquatable<SfcKey>
Public MustInherit Class SfcKey
Implements IEquatable(Of SfcKey)
继承
SfcKey
派生
实现

构造函数

名称 说明
SfcKey()

SfcKey 类是每个 SfcInstance 派生对象必须具有的所有嵌套键类的基类。 它实现相等和哈希,但不能进行比较,因为密钥只需要知道它们是否相等。

构造密钥后,键将不可变,因此密钥不应包含可在 Key 对象的生存期内更改的数据。 请勿使用字段(s)作为密钥的一部分,该键不是密钥所表示标识的一部分。 我们可以通过在密钥的内部属性上禁止 set() 来强制执行此操作。

通过实现以下方法解决任何排序或排序规则需求:

  1. SfcKey 派生类上的 IComparable
  2. SfcCollection 派生集合类上的 IComparer 或 IComparer<T>

属性

名称 说明
InstanceType

与此键类关联的实例类的类型。 默认 impl 是嵌套键类使用该方法实现与现有模型相容的方式。 这应在不是实例类型的嵌套类的任何键类中重写。

方法

名称 说明
Equals(Object)

每个键必须对其数据成员进行适当的值比较。 不要只依赖于引用相等性检查,就像对象一样。

Equals(SfcKey)

SfcKey 类是每个 SfcInstance 派生对象必须具有的所有嵌套键类的基类。 它实现相等和哈希,但不能进行比较,因为密钥只需要知道它们是否相等。

构造密钥后,键将不可变,因此密钥不应包含可在 Key 对象的生存期内更改的数据。 请勿使用字段(s)作为密钥的一部分,该键不是密钥所表示标识的一部分。 我们可以通过在密钥的内部属性上禁止 set() 来强制执行此操作。

通过实现以下方法解决任何排序或排序规则需求:

  1. SfcKey 派生类上的 IComparable
  2. SfcCollection 派生集合类上的 IComparer 或 IComparer<T>
GetHashCode()

每个密钥必须为其数据成员提供合理的哈希代码。 在内部,字符串可以使用其默认哈希代码,数值可以直接使用或位移位并截断为 int。内部数据的多个哈希代码通常可以一起生成体面的结果。

GetUrnFragment()

每个密钥必须实现如何生成有效的 XPath 定向标识字符串 fragmentwhich,以便从 Key[的 SfcKeyChain 生成完整有效的 Urn]。

ToString()

每个密钥

适用于