if(App.ActiveCellar == null) { MessageBox.Show("Aucune cave n'est ouverte."); return; } ObjectCollection wines = App.ActiveCellar.GetCollection((ushort)ObjectType.Wine); for (int i = 0; i < wines.Count; i++) { Wine wine = (Wine) wines[i]; //Température if (wine.Degree == 0) { switch (wine.WineColorString.ToLower()) { case "white": /* 6°C Vins de liqueur 7-8°C Champagnes simples et vins mousseux. Muscats. Vins liquoreux simples 9-10°C Alsace vendanges tardives. Vins moelleux. Vins blancs secs légers ou acides. 11-12°C Vins blancs secs. Vins blancs demi-secs : vouvray, pinot gris d’Alsace, gewurztraminer. Beaux champagnes. Beaux vins liquoreux. Grains nobles. 13-14°C Meilleurs vins blancs secs. Vins jaunes et autres vins de style oxydatif. 15-16°C Vins âgés de style oxydatif. */ if (wine.Category.Name.ToLower().Equals("champagnes")) { if (wine.Area.ToString().ToLower().Equals("champagne")) { wine.Degree = System.Convert.ToSingle(11); } else if (wine.Appellation.Name.ToLower().IndexOf("champagne") > -1) { wine.Degree = System.Convert.ToSingle(11); } else { wine.Degree = System.Convert.ToSingle(7); } } else if (wine.Category.Name.ToLower().Equals("vins")) { if (wine.Area.Name.ToLower().Equals("bordeaux")) { wine.Degree = System.Convert.ToSingle(13); } else if (wine.Area.Name.ToLower().Equals("bourgogne")) { wine.Degree = System.Convert.ToSingle(13); } else if (wine.Area.Name.ToLower().Equals("champagne")) { wine.Degree = System.Convert.ToSingle(11); } else if (wine.Appellation.Name.ToLower().IndexOf("champagne") > -1) { wine.Degree = System.Convert.ToSingle(11); } else if (wine.Appellation.Name.ToLower().IndexOf("gewurztraminer") > -1 || wine.Appellation.Name.ToLower().IndexOf("vouvray") > -1 || wine.Appellation.Name.ToLower().IndexOf("pinot") > -1) { wine.Degree = System.Convert.ToSingle(11); } else if (wine.Appellation.Name.ToLower().IndexOf("alsace") > -1) { wine.Degree = System.Convert.ToSingle(9); } else wine.Degree = System.Convert.ToSingle(10); } break; case "red": /* 11-12°C Vins rouges légers et fruités. 13-14°C Beaujolais et vins peu tanniques. Banyuls et autres vins doux naturels. 15-16°C Bourgognes, Rhône, Loire et vins rouges de structure moyenne. 17-18°C Bordeaux et tous vins rouges dotés d’une bonne structure. Portos. 19-20°C Vins exceptionnels et évolués. */ if (wine.Category.Name.ToLower().Equals("vins")) { if (wine.Area.Name.ToLower().Equals("bourgogne") || wine.Area.Name.ToLower().Equals("Rhône") || wine.Area.Name.ToLower().Equals("Loire")) { wine.Degree = System.Convert.ToSingle(15); } else if (wine.Area.Name.ToLower().Equals("bordeaux")) { wine.Degree = System.Convert.ToSingle(17); } else { wine.Degree = System.Convert.ToSingle(13); } } break; case "yellow": if (wine.Appellation.Name.ToLower().IndexOf("champagne") > -1) { wine.Degree = System.Convert.ToSingle(11); } else if (wine.Area.ToString().ToLower().Equals("champagne")) { wine.Degree = System.Convert.ToSingle(11); } else { wine.Degree = System.Convert.ToSingle(8); } break; case "liqueurlike": if (wine.Category.Name.ToLower().Equals("vins")) { wine.Degree = System.Convert.ToSingle(7); } else if (wine.Name.ToLower().IndexOf("maitrank") > -1) { wine.Degree = System.Convert.ToSingle(7); } break; case "rosy": /* 7-8°C Champagnes rosés simples et autres effervescents rosés. 9-10°C Rosés légers, vins de soif. 11-12°C Beaux champagnes rosés. Vins rosés classiques. 13-14°C Clarets de Bordeaux. Vins rosés structurés. Rosé des riceys. Bourgognes rosés. */ if (wine.Category.Name.ToLower().Equals("champagnes")) { if (wine.Area.ToString().ToLower().Equals("champagne")) { wine.Degree = System.Convert.ToSingle(11); } else if (wine.Appellation.Name.ToLower().IndexOf("champagne") > -1) { wine.Degree = System.Convert.ToSingle(11); } else { wine.Degree = System.Convert.ToSingle(8); } } else if (wine.Category.Name.ToLower().Equals("vins")) { if (wine.Area.ToString().ToLower().Equals("champagne")) { wine.Degree = System.Convert.ToSingle(11); } else if (wine.Appellation.Name.ToLower().IndexOf("champagne") > -1) { wine.Degree = System.Convert.ToSingle(11); } else { wine.Degree = System.Convert.ToSingle(10); } } break; } wine.Save(); } } for (int i = 0; i < wines.Count; i++) { Wine wine = (Wine) wines[i]; //Température if (wine.Degree == 0) { MessageBox.Show("Ce vin n'a pas été modifié : " + wine.Name + " (" + wine.Category.Name + " - " + wine.WineColorString + ")"); return; } } MessageBox.Show("Tous les vins ont étés mis à jour");