Table of Contents

Class ContractDescriptorFactory

Namespace
AnyProtocol
Assembly
AnyProtocol.dll

Creates contract descriptor instances.

public sealed class ContractDescriptorFactory
Inheritance
ContractDescriptorFactory
Inherited Members

Constructors

ContractDescriptorFactory(string)

Initializes a new instance of the ContractDescriptorFactory class.

public ContractDescriptorFactory(string channelPrefix = "anyprotocol")

Parameters

channelPrefix string

The channel prefix.

Methods

Create(Type)

Creates .

[RequiresDynamicCode("Runtime contract discovery uses reflection. Use source-generated descriptors for Native AOT.")]
[RequiresUnreferencedCode("Runtime contract discovery requires contract method metadata.")]
public ContractDescriptor Create(Type contractType)

Parameters

contractType Type

The contract type.

Returns

ContractDescriptor

The result of the create operation.

CreateGenerated(Type)

Creates generated.

public ContractDescriptor CreateGenerated(Type contractType)

Parameters

contractType Type

The contract type.

Returns

ContractDescriptor

The result of the create generated operation.

CreateRuntimeCompatible(Type)

Creates a contract descriptor while using generated metadata when runtime code generation is unavailable.

[UnconditionalSuppressMessage("Trimming", "IL2026", Justification = "Generated metadata is preferred and reflection is unreachable when dynamic code is disabled.")]
public ContractDescriptor CreateRuntimeCompatible(Type contractType)

Parameters

contractType Type

The contract interface to describe.

Returns

ContractDescriptor

The descriptor for the requested contract.

Create<TContract>()

Creates <t contract>.

[RequiresDynamicCode("Runtime contract discovery uses reflection. Use source-generated descriptors for Native AOT.")]
[RequiresUnreferencedCode("Runtime contract discovery requires contract method metadata.")]
public ContractDescriptor Create<TContract>()

Returns

ContractDescriptor

The result of the create<t contract> operation.

Type Parameters

TContract

The contract type.