C# 与公共字段不一致的可访问性错误

C# 与公共字段不一致的可访问性错误,c#,C#,我已经在论坛上查找了我的问题,说它是私有的,但是我已经将我所有的方法和类公开了,但是我仍然得到了这个错误: 错误1可访问性不一致:字段类型“A\u Day\u at\u the \u races.Bet”比字段“A\u Day\u at \u races.Guy.MyBet”更难访问 这是我的代码: public class Guy { public string Name; // The Guy's name public Bet MyBet; // An instance o

我已经在论坛上查找了我的问题,说它是私有的,但是我已经将我所有的方法和类公开了,但是我仍然得到了这个错误:

错误1可访问性不一致:字段类型“
A\u Day\u at\u the \u races.Bet
”比字段“
A\u Day\u at \u races.Guy.MyBet
”更难访问

这是我的代码:

public class Guy
{
    public string Name; // The Guy's name
    public Bet MyBet; // An instance of Bet() that has his bet
    public int Cash; //How much cash he has
    // GUI controls on the form
    public RadioButton MyRadioButton; // My RadioButton
    public Label MyLabel; // My Label
}

您的
Bet
类型似乎已声明为内部类型。您可以显式地将它声明为内部的,或者如果您没有提供任何可访问性修饰符,默认情况下它将被视为内部的

尝试将您的
赌注
类型改为公开:

public class Bet { ... } // or public struct Bet / public interface Bet
然后可以使用它声明其他公共类型的公共成员:

public class Guy
{
    public Bet MyBet; // or public Bet MyBet { get; set; } to create a property
    ...
}
进一步阅读


您好,谢谢您的回复,但我不能把它变成一门课,因为我会得到很多的帮助errors@user3043427它是一个接口吗?结构?这没关系,只需将其公开。如果我将其更改为“public class Bet{MyBet};”,则类、结构或接口成员声明中的标记“}”无效。顺便问一下,如何阅读dcastro的注释,我只能看到它的一部分。对不起,我是这个论坛的新手。@user3043427那么你做错了什么。请显示您如何声明
Bet
。显示Bet类定义。