我的课程'产品'有三个属性。它是一个简单的控制台应用程序,用户可以在其中输入三条记我从类产品创建列表,但有一些原因它将无限进入!我不知道我做错了什么
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication5
{
class Program
{
static void Main(string[] args)
{
Product obj1 = new Product();
}
}
class Product
{
public int ID { get; set; }
public string Name { get; set; }
public string Price { get; set; }
public Product()
{
Console.WriteLine("Enter Product Name: ");
string name = Console.ReadLine();
Console.WriteLine("Enter Product Price: ");
string price = Console.ReadLine();
List<Product> MyList = new List<Product>();
MyList.Add(new Product() { ID = 1, Name = name, Price = price });
foreach(var item in MyList)
{
Console.WriteLine("ID "+item.ID + " Name "+item.Name);
}
} //end product class
}
答案 0 :(得分:2)
在你的构造函数中,你创建一个新的产品,你的循环
答案 1 :(得分:1)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication5
{
class Program
{
static void Main(string[] args)
{
List<Product> MyList = new List<Product>();
Console.WriteLine("Enter Product Name: ");
string name = Console.ReadLine();
Console.WriteLine("Enter Product Price: ");
string price = Console.ReadLine();
MyList.Add(new Product{ ID = 1, Name = name, Price = price });
foreach(var item in MyList)
{
Console.WriteLine("ID "+item.ID + " Name "+item.Name);
}
Console.WriteLine("End of Program; Press Enter to Exit");
Console.ReadLine();
}
}
public class Product
{
public int ID { get; set; }
public string Name { get; set; }
public string Price { get; set; }
public Product()
{
}
} //end product class
}
您通常在数据类中没有UI交互。
我建议您通过Rob Miles Yellow Book工作,这是第一次学习如何编写C#的好书。
答案 2 :(得分:0)
在Product的构造函数中,您正在创建一个新的Product,它将依次调用Product的构造函数,这将创建另一个Product。 换句话说,它是一个无限循环!