когда вы назначаете сеанс, ваш сеанс становится
System.Linq.Enumerable.UnionIterator<int>
введите, и при доступе к сеансу вы конвертируете его в List<int>
, что не совпадает, поэтому выдает ошибку.
вы должны написать примерно так, как следует, чтобы вы могли получить значение
if (Session["SelectedList"] != null)
{
List<int> ls = (List<int>)Session["SelectedList"];
var temp = ls;
tempList.AddRange(temp);
}
Session["SelectedList"] = tempList.Union(intList).ToList();