首页 > 解决方案 > 如何反序列化和显示这些实例

问题描述

我为咖啡类型创建了这些实例,最后我想反序列化它们并在每个实例中显示它们。我创建了一个 foreach 循环,但它给了我很多重复的数据,如果可能的话,我想显示每个实例的数据实例。

还有其他东西可以用来显示它们吗?

public void CoffeeTypes()
    {
        Coffee coffeeType1 = new Coffee()
        {
           CoffeeID = "321",
           CoffeePrice = 1.50,
           TSpoonsSugar = 'N',
           CoffeeAmountRatio = 1,
           MilkAmountRatio = 0,
           Size = 'S'
        };

        Coffee coffeeType2 = new Coffee()
        {
            CoffeeID = "322",
            CoffeePrice = 2.99,
            TSpoonsSugar = 'N',
            CoffeeAmountRatio = 1,
            MilkAmountRatio = 0,
            Size = 'M'
        };

        Coffee coffeeType3 = new Coffee()
        {
            CoffeeID = "323",
            CoffeePrice = 4.50,
            TSpoonsSugar = 'N',
            CoffeeAmountRatio = 1,
            MilkAmountRatio = 0,
            Size = 'L'
        };

        Coffee coffeeType4 = new Coffee()
        {
            CoffeeID = "413",
            CoffeePrice = 1.99,
            TSpoonsSugar = 'Y',
            CoffeeAmountRatio = 1,
            MilkAmountRatio = 0,
            Size = 'S'
        };

        List<Coffee> coffeeData = new List<Coffee>()
        {
            coffeeType1,
            coffeeType2,
            coffeeType3,
            coffeeType4                                                     
        };

        Coffee.SerializeData(coffeeData, filePath);

        List<Coffee> coffeePosibilities = Coffee.DeserializeData<Coffee>(filePath);

        Coffee.coffeeInstance = coffeePosibilities;

        foreach (var coffee in coffeePosibilities)
        {
            Console.WriteLine("Coffee Type 1 :  Coffee ID: " + coffee.CoffeeID);
            Console.WriteLine("Coffee Type 2 :  Coffee ID: " + coffee.CoffeeID);
            Console.WriteLine("Coffee Type 3 :  Coffee ID: " + coffee.CoffeeID);
            Console.WriteLine("Coffee Type 4 :  Coffee ID: " + coffee.CoffeeID);

  }

标签: c#loopsserializationoutputdeserialization

解决方案


将您的 foreach 循环更改为仅输出当前元素的信息

foreach (var coffee in coffeePosibilities)
{
    Console.WriteLine($"Coffee Type :  Coffee ID: {coffee.CoffeeID}");
}

推荐阅读