Две вещи:
1) Не наследуй List<T>
. Реализация IList<T>
.
2) Используйте синглтон:
public class CartCollection : IList<Cart>
{
public static readonly CartCollection Instance = new CartCollection();
private CartCollection() { }
// Implement IList<T> here
}
Кроме того, поскольку вы используете это в приложении ASP.NET, вы должны знать, что статические члены совместно используются всеми запросами. Использование такого кода без правильного ввода lock
может привести к сбоям. И даже если вы используете lock
, вы будете делиться данными между вашими пользователями, которые вы, возможно, не хотите ...