Table of Contents

Class ImportDefinition

Namespace
Microsoft.VisualStudio.Composition
Assembly
Microsoft.VisualStudio.Composition.dll
public class ImportDefinition : IEquatable<ImportDefinition>
Inheritance
ImportDefinition
Implements
Inherited Members

Constructors

ImportDefinition(string, ImportCardinality, IReadOnlyDictionary<string, object?>, IReadOnlyCollection<IImportSatisfiabilityConstraint>)

Initializes a new instance of the ImportDefinition class based on MEF v1 attributes.

public ImportDefinition(string contractName, ImportCardinality cardinality, IReadOnlyDictionary<string, object?> metadata, IReadOnlyCollection<IImportSatisfiabilityConstraint> additionalConstraints)

Parameters

contractName string
cardinality ImportCardinality
metadata IReadOnlyDictionary<string, object>
additionalConstraints IReadOnlyCollection<IImportSatisfiabilityConstraint>

ImportDefinition(string, ImportCardinality, IReadOnlyDictionary<string, object?>, IReadOnlyCollection<IImportSatisfiabilityConstraint>, IReadOnlyCollection<string>)

Initializes a new instance of the ImportDefinition class based on MEF v2 attributes.

public ImportDefinition(string contractName, ImportCardinality cardinality, IReadOnlyDictionary<string, object?> metadata, IReadOnlyCollection<IImportSatisfiabilityConstraint> additionalConstraints, IReadOnlyCollection<string> exportFactorySharingBoundaries)

Parameters

contractName string
cardinality ImportCardinality
metadata IReadOnlyDictionary<string, object>
additionalConstraints IReadOnlyCollection<IImportSatisfiabilityConstraint>
exportFactorySharingBoundaries IReadOnlyCollection<string>

Properties

Cardinality

public ImportCardinality Cardinality { get; }

Property Value

ImportCardinality

ContractName

public string ContractName { get; }

Property Value

string

ExportConstraints

public IReadOnlyCollection<IImportSatisfiabilityConstraint> ExportConstraints { get; }

Property Value

IReadOnlyCollection<IImportSatisfiabilityConstraint>

ExportFactorySharingBoundaries

Gets the sharing boundaries created when the export factory is used.

public IReadOnlyCollection<string> ExportFactorySharingBoundaries { get; }

Property Value

IReadOnlyCollection<string>

Metadata

public IReadOnlyDictionary<string, object?> Metadata { get; }

Property Value

IReadOnlyDictionary<string, object>

Methods

AddExportConstraint(IImportSatisfiabilityConstraint)

public ImportDefinition AddExportConstraint(IImportSatisfiabilityConstraint constraint)

Parameters

constraint IImportSatisfiabilityConstraint

Returns

ImportDefinition

Equals(ImportDefinition?)

public bool Equals(ImportDefinition? other)

Parameters

other ImportDefinition

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

ToString(TextWriter)

public void ToString(TextWriter writer)

Parameters

writer TextWriter

WithExportConstraints(IReadOnlyCollection<IImportSatisfiabilityConstraint>)

public ImportDefinition WithExportConstraints(IReadOnlyCollection<IImportSatisfiabilityConstraint> constraints)

Parameters

constraints IReadOnlyCollection<IImportSatisfiabilityConstraint>

Returns

ImportDefinition