Вместо использования серверного кода используйте клиент.Ниже серверная переменная списка пожеланий инициализирует атрибут style без стиля или стиля «display: none», чтобы скрыть правую ссылку в зависимости от того, находится элемент в списке пожеланий или нет.
//This is server-side
bool wishlist = ViewBag.Wishlist.Contains(item.id);
<!-- Client side only but use server-side definitions inside to initialize -->
<a onclick="RemoveFromWishList(@ViewBag.OrderLine)" id="remove" class="btn btn-default swap swapHeart"
style="@(wishlist ? "" : "display:none")">
<span style="color:#8F6B93;" class="glyphicon glyphicon-heart"></span>
</a>
<a onclick="AddToWishList(@item.id)" id="add" class="btn btn-default swap swapHeart"
style="@(wishlist ? "display:none" : "")">
<span style="color:#8F6B93;" class="glyphicon glyphicon-heart-empty"></span>
</a>
Затемщелкните, вы можете использовать JS, чтобы поменять другой:
$("a.swapHeart").on("click", function(e) {
$(this).toggle();
$(this).siblings("a.swapHeart").toggle();
});
Пока ссылки являются настоящими братьями и сестрами, это должно работать.