Guest User

Untitled

a guest
Dec 12th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. public class ResourceLinksActionFilterAttribute : ActionFilterAttribute
  2. {
  3. public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
  4. {
  5. ResourceModel payload;
  6. if (actionExecutedContext.Response.TryGetContentValue<ResourceModel>(out payload))
  7. {
  8. payload.BuildResourceLinks(actionExecutedContext.Request);
  9. }
  10.  
  11. base.OnActionExecuted(actionExecutedContext);
  12. }
  13. }
  14.  
  15. public class ResourceModel
  16. {
  17. public ICollection<Link> Links { get; set; }
  18.  
  19. public ResourceModel()
  20. {
  21. Links = new List<Link>();
  22. }
  23.  
  24. public virtual void BuildResourceLinks(HttpRequestMessage request)
  25. {
  26. AddSelfLink(request);
  27. }
  28.  
  29. protected void AddSelfLink(HttpRequestMessage request)
  30. {
  31. Links.Add(new Link { Rel = "Self", Href = request.RequestUri.AbsoluteUri });
  32. }
  33. }
Add Comment
Please, Sign In to add comment