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
optionsIJsonApiOptionsrequestIJsonApiRequestpaginationContextIPaginationContexthttpContextAccessorIHttpContextAccessorlinkGeneratorLinkGeneratorcontrollerResourceMappingIControllerResourceMappingpaginationParserIPaginationParserdocumentDescriptionLinkProviderIDocumentDescriptionLinkProvider
Methods
GetRelationshipLinks(RelationshipAttribute, IIdentifiable)
Builds the links object for a relationship inside a returned resource.
public RelationshipLinks? GetRelationshipLinks(RelationshipAttribute relationship, IIdentifiable leftResource)
Parameters
relationshipRelationshipAttributeleftResourceIIdentifiable
Returns
GetResourceLinks(ResourceType, IIdentifiable)
Builds the links object for a returned resource (primary or included).
public ResourceLinks? GetResourceLinks(ResourceType resourceType, IIdentifiable resource)
Parameters
resourceTypeResourceTyperesourceIIdentifiable
Returns
GetTopLevelLinks()
Builds the links object that is included in the top-level of the document.
public TopLevelLinks? GetTopLevelLinks()
Returns
RenderLinkForAction(string?, string, IDictionary<string, object?>)
protected virtual string? RenderLinkForAction(string? controllerName, string actionName, IDictionary<string, object?> routeValues)
Parameters
controllerNamestringactionNamestringrouteValuesIDictionary<string, object>