繁体   English   中英

如何在c#中使用linq动态添加列表中的多个项目

[英]How to add multiple items in a list dynamically using linq in c#

我正在尝试使用 c# 中的控制台应用程序在列表中添加多个项目,但我的列表添加了重复的项目。

谁能帮我解决这个问题?

这是我的一段代码。

public class Billionaire
{
    public String Name { get; set; }
    public String Country { get; set;}
    public int Income { get; set; }
}  

public static Billionaire billObj = new Billionaire();
public static List<Billionaire> Billionaires = new List<Billionaire>();

public static Billionaire billObj = new Billionaire();
public static List<Billionaire> Billionaires = new List<Billionaire>();

您正在使用的同一个实例billObj每次调用方法时addNewBillionaire List 将保留对同一副本的引用,该副本在您第二次调用该方法时更新。

要解决它,您需要在您的方法中重新初始化 billObj (如评论中所述)。

public static void addNewBillionaire() 
{ 
    billObj = new Billionaire();
    Console.WriteLine("Enter name:"); 
    billObj.Name = Console.ReadLine(); 
    Console.WriteLine("Enter the income:"); 
    billObj.Income = int.Parse(Console.ReadLine()); 
    Console.WriteLine("Enter country:"); 
    billObj.Country = Console.ReadLine(); 
    Billionaires.Add(billObj); 
} 

如果billObj不在其他地方使用,更好的方法是将 billObj 作为方法的局部变量

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM