added next/prevoius page info to link headers

This commit is contained in:
Sasha Pierson 2017-11-28 14:39:56 -08:00
Родитель c7fe26ddcd
Коммит 2d236b3c54
2 изменённых файлов: 12 добавлений и 2 удалений

Просмотреть файл

@ -20,5 +20,11 @@ namespace Sia.Shared.Protocol
public override StringValues HeaderValues
=> StringValues.Concat(base.HeaderValues, _filterMetadata.FilterValues());
protected override StringValues NextPageLinkInfo
=> StringValues.Concat(base.NextPageLinkInfo, _filterMetadata.FilterValues());
protected override StringValues PreviousPageLinkInfo
=> StringValues.Concat(base.PreviousPageLinkInfo, _filterMetadata.FilterValues());
}
}

Просмотреть файл

@ -21,14 +21,18 @@ namespace Sia.Shared.Protocol
public virtual StringValues HeaderValues =>
_baseHeaderValues;
protected virtual StringValues NextPageLinkInfo => _metadata.NextPageLinkInfo;
protected virtual StringValues PreviousPageLinkInfo => _metadata.PreviousPageLinkInfo;
private StringValues _baseHeaderValues => JsonConvert.SerializeObject(new
{
PageNumber = _metadata.PageNumber,
PageSize = _metadata.PageSize,
TotalRecords = _metadata.TotalRecords,
TotalPages = _metadata.TotalPages,
NextPageLink = _metadata.NextPageExists ? _urlHelper.Action(_routeName, _metadata.NextPageLinkInfo) : null,
PrevPageLink = _metadata.PreviousPageExists ? _urlHelper.Action(_routeName, _metadata.PreviousPageLinkInfo) : null
NextPageLink = _metadata.NextPageExists ? _urlHelper.Action(_routeName, NextPageLinkInfo) : null,
PrevPageLink = _metadata.PreviousPageExists ? _urlHelper.Action(_routeName, PreviousPageLinkInfo) : null
});
}
}