C# 中的可访问性不一致?

Inconsistent Accessibility in C#?

所以我有以下 Class、RoomMonitor,设置如下

class RoomMonitor {
    public RoomMonitor (Account acc) {
           // Init stuff
    }
}

Account class 设置为..

class Account {
    public Account (DataRow row) {
           // Init stuff
    }
}

我的问题是,这个错误不应该发生,因为两个 class 都是 public 对吗?然而我得到了错误:

Inconsistent accessibility: parameter type 'Hotel_Manager.Objects.Account' is less accessible than method 'Hotel_Manager.RoomMonitor.RoomMonitor

所以您显示的代码看起来像两个 classes 的构造函数。 class 声明本身应该都是 public。例如

public class RoomMonitor

正如消息所说; public方法中Account类型的参数不是public.

也将类型设为 Hotel_Manager.Objects.Account public 以解决此问题。