public static IActionResult HAL <T>(this ControllerBase controller, T model, IEnumerable <Link> links, string relativeLinkBase = "~/", bool addSelfLinkIfNotExists = true, HttpStatusCode statuscode = HttpStatusCode.OK) { string linkBase = GetLinkBase(controller, relativeLinkBase); var response = new HALResponse(model, new HALModelConfig { LinkBase = linkBase }) .AddLinks(links); if (addSelfLinkIfNotExists) { response.AddSelfLinkIfNotExists(controller.Request); } return(response.ToActionResult(controller, statuscode)); }
public static IHttpActionResult HAL <T>(this ApiController controller, T model, IEnumerable <Link> links, string relativeLinkBase = "~/", bool addSelfLinkIfNotExists = true, HttpStatusCode statuscode = HttpStatusCode.OK) { string linkBase = GetLinkBase(controller, relativeLinkBase); var response = new HALResponse(model, new HALModelConfig { LinkBase = linkBase }) .AddLinks(links); if (addSelfLinkIfNotExists) { response.AddSelfLinkIfNotExists(controller.Request); } return(new NegotiatedContentResult <HALResponse>(statuscode, response, controller)); }