Bonjour,
J'ai besoin d'une collection sérialisable avec aucune valeurs en double. J'utilise présentement un test avant d'insérer un objet dans une liste List<>.
1 2 3
|
if (!NASDAQStocksFollowUpList.Exists(x => x.Symbol == "AAPL"))
NASDAQStocksFollowUpList.Add(new NASDAQFollowUpStocks { Symbol = "AAPL", Name = "Microsoft", LastPrice = 0, BuyingDate = DateTime.Now, Price = 0 }); |
mais j'aimerais mieux faire ceci avec le test dans la méthode AddUnique.
UniqueNASDAQStocksFollowUpList.AddUnique(new NASDAQFollowUpStocks { Symbol = "AAPL", Name = "Apple Inc.", LastPrice = 0, BuyingDate = DateTime.Now, Price = 0 });
J'ai donc créé un autre type de List<> avec ajout de AddUnique() mais j'ai un problème voir dans le code ci-dessous.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| class UniqueList<NASDAQFollowUpStocks> : List<NASDAQFollowUpStocks>
{
public bool AddUnique(NASDAQFollowUpStocks item)
{
// 'NASDAQFollowUpStocks' does not contain a definition for 'Symbol' and no accessible extension method 'Symbol' accepting a first argument of type 'NASDAQFollowUpStocks' could be found(are you missing a using directive or an assembly reference ?)
if (this.Exists(x => x.Symbol == item.symbol)) // Problème ici j'ai essayé un cast avant je ne trouve pas. Qu'est-ce qui ne va pas ?
{
return false;
}
else
{
this.Add(item);
return true;
}
}
} |
Voici la classe utilisé qui doit être sérialisable
1 2 3 4 5 6 7 8 9 10 11 12 13
| namespace Add_AddUnique_Method
{
// Attention je dois sauver et récupèrer la liste ça fonctionne très bien et ce n'est pas le problème mais [Serializable] ça doit rester là
[Serializable]
class NASDAQFollowUpStocks
{
public string Symbol { get; set; }
public string Name { get; set; }
public double Price { get; set; }
public DateTime BuyingDate { get; set; }
public double LastPrice { get; set; }
}
} |
J'ai horreur de l'aide en ligne de Microsoft c'est impossible de si retrouver la-dedans. Je vais me commander un livre en C# finalement.
J'ai écris un petit programme juste pour tester vous n'avez donc rien à taper.
Bonne fin de journée à tous. Bye!
Partager