code: func (c *WorkItemRelationshipsLinksController) List(ctx *app.ListWorkItemRelationshipsLinksContext) error {
  	var modelLinks []link.WorkItemLink
  	err := application.Transactional(c.db, func(appl application.Application) error {
  		var err error
  		modelLinks, err = appl.WorkItemLinks().ListByWorkItem(ctx.Context, ctx.WiID)
  		return err
  	})
  	if err != nil {
  		return jsonapi.JSONErrorResponse(ctx, err)
  	}
  	return ctx.ConditionalEntities(modelLinks, c.config.GetCacheControlWorkItemLinks, func() error {
  		appLinks := app.WorkItemLinkList{}
  		appLinks.Data = make([]*app.WorkItemLinkData, len(modelLinks))
  		for index, modelLink := range modelLinks {
  			appLink := ConvertLinkFromModel(ctx.Request, modelLink)
  			appLinks.Data[index] = appLink.Data
  		}
  		// TODO: When adding pagination, this must not be len(rows) but
  		// the overall total number of elements from all pages.
  		appLinks.Meta = &app.WorkItemLinkListMeta{
  			TotalCount: len(modelLinks),
  		}
  		if err := enrichLinkList(ctx.Context, c.db, ctx.Request, &appLinks); err != nil {
  			return jsonapi.JSONErrorResponse(ctx, err)
  		}
  		return ctx.OK(&appLinks)
  	})
  }
docs: // List runs the list action.