Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class ResourceLinksActionFilterAttribute : ActionFilterAttribute
- {
- public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
- {
- ResourceModel payload;
- if (actionExecutedContext.Response.TryGetContentValue<ResourceModel>(out payload))
- {
- payload.BuildResourceLinks(actionExecutedContext.Request);
- }
- base.OnActionExecuted(actionExecutedContext);
- }
- }
- public class ResourceModel
- {
- public ICollection<Link> Links { get; set; }
- public ResourceModel()
- {
- Links = new List<Link>();
- }
- public virtual void BuildResourceLinks(HttpRequestMessage request)
- {
- AddSelfLink(request);
- }
- protected void AddSelfLink(HttpRequestMessage request)
- {
- Links.Add(new Link { Rel = "Self", Href = request.RequestUri.AbsoluteUri });
- }
- }
Add Comment
Please, Sign In to add comment