“list.add”在类(EmployeeClass)中不起作用,它在C#中没有main方法

时间:2018-05-09 03:06:11

标签: c# list

using System;
using System.Collections.Generic;

public struct employee
{
    int EmpId;
    string EmpName;

    public employee(int EmpId,string EmpName)
    {
        this.EmpId = EmpId;
        this.EmpName = EmpName;
    }
}

class EmployeeClass 
{
    List<string> e = new List<string>();
    e.Add("Nitin");
    List<employee> e1 = new List<employee>();
    e1.Add(new employee(1,"prakash"));

}
  

当前上下文中不存在名称“e.Add”

     

当前上下文中不存在名称Add

class Program
{
    static void Main(string[] args)
    {
        List<string> e = new List<string>();
        e.Add("Nitin");
        List<employee> e1 = new List<employee>();
        e1.Add(new employee(1,"prakash"));
    }
}
  

在这个列表中,在main函数中运行正常,但是当我在EmployeeClass中尝试相同的代码时,它无法正常工作

2 个答案:

答案 0 :(得分:0)

除了字段初始值设定项之外,您不能将代码直接放入类中。它需要进入方法或构造函数或属性。以下是如何在构造函数中执行此操作并内联读取注释以查看如何在方法和属性中执行此操作:

class EmployeeClass
{
    public EmployeeClass()
    {
        List<string> e = new List<string>();
        e.Add("Nitin");
        List<employee> e1 = new List<employee>();
        e1.Add(new employee(1, "prakash"));
    }

    public void SomeMethod()
    {
        // You can put code here
    }

    public List<string> SomeProperty
    {
        get 
        { 
            // You can put code here too 
        }
    }
}

答案 1 :(得分:0)

你不能把一个逻辑放在方法/属性之外的任何地方,以便执行它应该在一个可以调用的地方的代码并执行代码 您需要将员工类的结构更改为此

class EmployeeClass
{
   List<string> e = new List<string>();
   List<employee> e1 = new List<employee>();
   public EmployeeClass()
   {
      e.Add("Nitin");
      e1.Add(new employee(1, "prakash"));
   }
}