C# 如何反序列化和显示这些实例
我为咖啡类型创建了这些实例,最后我想对它们进行反序列化,并在每个实例中显示它们。我创建了一个foreach循环,但是它给了我很多重复的数据,如果可能的话,我希望显示每个实例的数据实例 还有什么我可以用来展示它们的吗C# 如何反序列化和显示这些实例,c#,loops,serialization,output,deserialization,C#,Loops,Serialization,Output,Deserialization,我为咖啡类型创建了这些实例,最后我想对它们进行反序列化,并在每个实例中显示它们。我创建了一个foreach循环,但是它给了我很多重复的数据,如果可能的话,我希望显示每个实例的数据实例 还有什么我可以用来展示它们的吗 public void CoffeeTypes() { Coffee coffeeType1 = new Coffee() { CoffeeID = "321", CoffeePrice = 1.50
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);
}
public void CoffeeTypes()
{
咖啡类型1=新咖啡()
{
CoffeeID=“321”,
咖啡价格=1.50,
TSpoonsSugar='N',
CoffeeAmountRatio=1,
MilkAmountRatio=0,
大小='S'
};
咖啡类型2=新咖啡()
{
CoffeeID=“322”,
咖啡价格=2.99,
TSpoonsSugar='N',
CoffeeAmountRatio=1,
MilkAmountRatio=0,
大小='M'
};
咖啡类型3=新咖啡()
{
CoffeeID=“323”,
咖啡价格=4.50,
TSpoonsSugar='N',
CoffeeAmountRatio=1,
MilkAmountRatio=0,
大小='L'
};
咖啡类型4=新咖啡()
{
CoffeeID=“413”,
咖啡价格=1.99,
TSpoonsSugar='Y',
CoffeeAmountRatio=1,
MilkAmountRatio=0,
大小='S'
};
List coffeeData=新列表()
{
咖啡类型1,
咖啡类型2,
咖啡类型3,
咖啡类型4
};
序列化数据(coffeeData,filePath);
List coffeePosibilities=Coffee.DeserializeData(文件路径);
Coffee.coffeeInstance=咖啡可能性;
foreach(咖啡中的var咖啡可能性)
{
Console.WriteLine(“咖啡类型1:咖啡ID:+Coffee.CoffeeID”);
Console.WriteLine(“咖啡类型2:咖啡ID:+Coffee.CoffeeID”);
Console.WriteLine(“咖啡类型3:咖啡ID:+Coffee.CoffeeID”);
Console.WriteLine(“咖啡类型4:咖啡ID:+Coffee.CoffeeID”);
}
将foreach循环更改为仅输出当前元素的信息
foreach (var coffee in coffeePosibilities)
{
Console.WriteLine($"Coffee Type : Coffee ID: {coffee.CoffeeID}");
}
不确定
序列化数据
和反序列化数据
方法中发生了什么。因此无法建议anything@ChetanRanpariya我认为这只是为了测试序列化是否按预期工作,并且在反序列化SerializeData
工作正常时不会丢失数据,但我不知道如何使用他们的财产感谢@Ehssan这是我想要的输出:)