C # La référence d'objet n'est pas définie sur une instance d'un objet. Classe d'instanciation dans une liste?

public class OrderItem
{
    public string ProductName { get; private set; }
    public decimal LatestPrice { get; private set; }
    public int Quantity { get; private set; }
    public decimal TotalOrder { get {return LatestPrice * Quantity;}}

    public OrderItem(string name, decimal price, int quantity)
    {

    }

    public OrderItem(string name, decimal price) : this(name, price, 1)
    {

    }
}

Ci-dessus est la classe, juste pour un peu de fond.

public void AddProduct(string name, decimal price, int quantity)
{
    lstOrderitem.Add(new OrderItem(name, price, quantity));           
}

Sur le code à l'intérieur de la AddProduct méthode est l'endroit où j'obtiens l'erreur mentionnée dans le titre.

Je suis juste essayer d'instancier la classe et de l'ajouter à une collection destinée à être affichée dans une zone de liste sur mon programme.

La "AddProduct" sera appelé sur un événement clic du bouton

Erreur = NullReferenceException - la référence d'Objet n'est pas définie à une instance d'un objet.

Je me demandais si quelqu'un savait pourquoi ce qui se passait car je pensais que depuis que j'ai fais une NOUVELLE instance de la classe tout en ajoutant à la liste qu'il aurait quelque chose de référence. Merci si quelqu'un sait quel est le problème.

Modifier

    public List<OrderItem> lstOrderitem{ get; private set; }
    public int NumberOfProducts { get; private set; }
    public decimal BasketTotal { get; private set; }

    public ShoppingBasket()
    {
        //List<OrderItem> lstOrderitem = new List<OrderItem>();
    }

    public void AddProduct(string name, decimal price, int quantity)
    {
        lstOrderitem.Add(new OrderItem(name, price, quantity));


    }

source d'informationauteur Taemint