J'ai créé les éléments suivants dans ma classeC# créer la liste dans les propriétés de la classe
private List<CreditCardTransaction> _ccTransactions = new List<CreditCardTransaction>();
public List<CreditCardTransaction> ccTransactions
{
get { return _ccTransactions; }
set { _ccTransactions = value; }
}
Dans une autre fonction publique (dans la même classe), je tenté d'ajouter une valeur à la liste en utilisant le code suivant:
_ccTransactions.Add(new CreditCardTransaction(Convert.ToString(items[0]), Convert.ToString(items[1]), Convert.ToDouble(items[2]), DateTime.Parse(items[3])));
Cependant, une ligne ondulée rouge sous « _ccTransactions » dit
erreur 1 une référence d'objet est requis pour le champ non statique, la méthode ou la propriété « CreditCardTransactionKeeper.Cr editCardTransaction._ccTransactions '
Quelle est la manière correcte pour moi d'ajouter un nouvel élément à la liste quand je suis dans une méthode de la classe qui a défini cette liste?
@Philip Rieck a absolument raison. Est-il logique, cependant, pourquoi une méthode statique ne peut pas accéder à une variable d'instance? –
@Esteban Araya: Oui, c'est logique. Une méthode statique appartient à la classe entière, pas à une instance particulière de celle-ci, donc puisqu'il n'y a pas d'instance accessible aussi loin que la méthode statique, il ne peut y avoir de variables d'instance. –
@Anna Lear: Je suppose que Esteban demandait l'affiche originale. C'est lui qui devrait comprendre la logique derrière le comportement afin d'avoir une réponse vraiment complète. –