Мне бы хотелось иметь одну кнопку "Назад", чтобы посетители могли вернуться на свои предыдущие уникальные страницы.
- Хранить страницы
- Нет повторяющихся страниц подряд (обычно это вызвано посты)
- Некоторая страница не должна храниться
Я пришел с кодом, приведенным ниже, но с трудом справляюсь с резервным копированием списка, избегая дублирования и игнорируя некоторые страницы.
string currentPath = Request.Url.PathAndQuery; //Get current Path with Query
List<string> pathHistoryList = new List<string>(); //Decleare list object
if (Session["pathList"] as List<string> != null) // does it exist
{
pathHistoryList = (List<string>)Session["pathList"]; //Get Session list with Path with Query
if (pathHistoryList.Count > 1) //Does it have backup(s)?
{
if (pathHistoryList[1] == currentPath && pathHistoryList.Count > 2) // did they backup?
{
pathHistoryList.RemoveRange(0, 2);
}
}
Session["previousPath"] = pathHistoryList[0]; //Store previous path for back button
}
pathHistoryList.Insert(0, currentPath); // Insert current path
Session["pathList"] = pathHistoryList;