无法访问Class中Class类的成员

时间:2015-07-25 09:19:54

标签: c#

我在班级List<>中定义了tRec个班级tBot。我可以向List<>添加新项目,但我无法访问此列表中存储的tRec的类成员。在尝试访问tRec - 类成员时,Intellisense不会列出成员。

简化代码如下(剥离大多数成员等):

class tRec
{
    int Action { get; set; }

    public tRec(int action)
    {
        Action = action;
    }
}

class tBot
{
    public double Score { get; set; }

    public List<tRec> recList;

    public tBot(double score)
    {
        Score = score;
        recList = new List<tRec>();
    }
}

static void buyToOpen(int Idx, tBot bot)
{
    double cumPL = 0.0;

    bot.recList.Add(new tRec(0));

    if (bot.recList.Count() > 1)
    {
        cumPL = bot.recList[0].Action ?? /Equals/GetHashCode/GetType/ToString
    }
}

因此,当我尝试使用索引访问List<> bot.recList[0].时,我希望我可以选择tRec的类成员,在这个简单的示例中Action ,但所有Intellisense提供的都是

  

Equals / GetHashCode / etc。

我错过了什么?

2 个答案:

答案 0 :(得分:1)

您需要public财产

public int Action { get; set; }

如果您未指定access modifier,则默认为private

答案 1 :(得分:1)

这里有两件事:

  • Count是属性,而不是方法。删除括号。
  • 声明
  • Action没有访问说明符,因此是私有的,导致它在tRec之外不可见。在声明中添加internal或更好public