Table of Contents

Class LinkBuilder

Namespace
JsonApiDotNetCore.Serialization.Response
Assembly
JsonApiDotNetCore.dll

Builds resource object links and relationship object links.

[PublicAPI]
public class LinkBuilder : ILinkBuilder
Inheritance
LinkBuilder
Implements
Inherited Members

Constructors

LinkBuilder(IJsonApiOptions, IJsonApiRequest, IPaginationContext, IHttpContextAccessor, LinkGenerator, IControllerResourceMapping, IPaginationParser, IDocumentDescriptionLinkProvider)

public LinkBuilder(IJsonApiOptions options, IJsonApiRequest request, IPaginationContext paginationContext, IHttpContextAccessor httpContextAccessor, LinkGenerator linkGenerator, IControllerResourceMapping controllerResourceMapping, IPaginationParser paginationParser, IDocumentDescriptionLinkProvider documentDescriptionLinkProvider)

Parameters

options IJsonApiOptions
request IJsonApiRequest
paginationContext IPaginationContext
httpContextAccessor IHttpContextAccessor
linkGenerator LinkGenerator
controllerResourceMapping IControllerResourceMapping
paginationParser IPaginationParser
documentDescriptionLinkProvider IDocumentDescriptionLinkProvider

Methods

Builds the links object for a relationship inside a returned resource.

public RelationshipLinks? GetRelationshipLinks(RelationshipAttribute relationship, IIdentifiable leftResource)

Parameters

relationship RelationshipAttribute
leftResource IIdentifiable

Returns

RelationshipLinks

Builds the links object for a returned resource (primary or included).

public ResourceLinks? GetResourceLinks(ResourceType resourceType, IIdentifiable resource)

Parameters

resourceType ResourceType
resource IIdentifiable

Returns

ResourceLinks

Builds the links object that is included in the top-level of the document.

public TopLevelLinks? GetTopLevelLinks()

Returns

TopLevelLinks

RenderLinkForAction(string?, string, IDictionary<string, object?>)

protected virtual string? RenderLinkForAction(string? controllerName, string actionName, IDictionary<string, object?> routeValues)

Parameters

controllerName string
actionName string
routeValues IDictionary<string, object>

Returns

string