Skip to content

AssemblyResolution

Namespace: Dotsider.Core.Analysis.Models

Assembly: Dotsider.Core.dll

Outcome of an identity-based assembly resolution. Carries everything the dependency-graph builder and UI need: the resolved assembly or module (or null on failure), the provenance classifying how the file was located, the candidate path of an identity-mismatched simple-name hit, and — for .NET Framework binds — the policy-layer attribution and the effective bound identity.

public sealed record AssemblyResolution : IEquatable<AssemblyResolution>

ObjectAssemblyResolution

AssemblyResolution(ResolvedAssembly?, AssemblyProvenance, string?, AppliedPolicy?, AssemblyRefInfo?)

Section titled “AssemblyResolution(ResolvedAssembly?, AssemblyProvenance, string?, AppliedPolicy?, AssemblyRefInfo?)”

Outcome of an identity-based assembly resolution. Carries everything the dependency-graph builder and UI need: the resolved assembly or module (or null on failure), the provenance classifying how the file was located, the candidate path of an identity-mismatched simple-name hit, and — for .NET Framework binds — the policy-layer attribution and the effective bound identity.

Parameters:

  • Resolved (ResolvedAssembly): The assembly file, bundle entry, or authenticated sibling module the resolver selected, or null when the bind failed (Unresolved, IdentityMismatch, CodeBaseMissing).
  • Provenance (AssemblyProvenance): Classification of how the node was located.
  • CandidateProbePath (String): The simple-name match whose identity did not align (IdentityMismatch), or the configured codeBase href that does not exist (CodeBaseMissing). null for other outcomes.
  • AppliedPolicy (AppliedPolicy): Records the requested → bound rewrite when .NET Framework binding policy fired. null for non-redirected resolutions and for all .NET Core / .NET 5+ resolutions.
  • LoadedIdentity (AssemblyRefInfo): The identity the binder actually loaded after applying policy. May differ from the requested identity for net48 binds when redirects collapsed multiple requested versions onto one loaded version. null for non-net48 resolutions and for failures.
public AssemblyResolution(ResolvedAssembly? Resolved, AssemblyProvenance Provenance, string? CandidateProbePath, AppliedPolicy? AppliedPolicy = null, AssemblyRefInfo? LoadedIdentity = null)

Records the requested → bound rewrite when .NET Framework binding policy fired. null for non-redirected resolutions and for all .NET Core / .NET 5+ resolutions.

Returns: AppliedPolicy

public AppliedPolicy? AppliedPolicy { get; init; }

The simple-name match whose identity did not align (IdentityMismatch), or the configured codeBase href that does not exist (CodeBaseMissing). null for other outcomes.

Returns: String

public string? CandidateProbePath { get; init; }

The identity the binder actually loaded after applying policy. May differ from the requested identity for net48 binds when redirects collapsed multiple requested versions onto one loaded version. null for non-net48 resolutions and for failures.

Returns: AssemblyRefInfo

public AssemblyRefInfo? LoadedIdentity { get; init; }

Classification of how the node was located.

Returns: AssemblyProvenance

public AssemblyProvenance Provenance { get; init; }

The assembly file, bundle entry, or authenticated sibling module the resolver selected, or null when the bind failed (Unresolved, IdentityMismatch, CodeBaseMissing).

Returns: ResolvedAssembly

public ResolvedAssembly? Resolved { get; init; }

Deconstruct(out ResolvedAssembly?, out AssemblyProvenance, out string?, out AppliedPolicy?, out AssemblyRefInfo?)

Section titled “Deconstruct(out ResolvedAssembly?, out AssemblyProvenance, out string?, out AppliedPolicy?, out AssemblyRefInfo?)”

Parameters:

public void Deconstruct(out ResolvedAssembly? Resolved, out AssemblyProvenance Provenance, out string? CandidateProbePath, out AppliedPolicy? AppliedPolicy, out AssemblyRefInfo? LoadedIdentity)

Parameters:

Returns: Boolean

public bool Equals(AssemblyResolution? other)

Parameters:

Returns: Boolean

public override bool Equals(object? obj)

Returns: Int32

public override int GetHashCode()

Returns: String

public override string ToString()

operator !=(AssemblyResolution?, AssemblyResolution?)

Section titled “operator !=(AssemblyResolution?, AssemblyResolution?)”

Parameters:

Returns: Boolean

public static bool operator !=(AssemblyResolution? left, AssemblyResolution? right)

operator ==(AssemblyResolution?, AssemblyResolution?)

Section titled “operator ==(AssemblyResolution?, AssemblyResolution?)”

Parameters:

Returns: Boolean

public static bool operator ==(AssemblyResolution? left, AssemblyResolution? right)