调用建立双向关联的方法
本文关键字:方法 关联 建立 调用 | 更新日期: 2023-09-27 18:01:19
我试图完成这项任务,但即使我相信我已经从SavingsAccount中调用了RecordCustomer()方法,我也会得到一个错误,即由于其保护级别而无法访问,但我正在挠头试图解决它。
class Customer
{
private List<SavingsAccount> _Accounts = new List<SavingsAccount>();
public ReadOnlyCollection<SavingsAccount> Accounts
{
get { return _Accounts.AsReadOnly(); }
}
public void AddAccount(SavingsAccount account)
{
if (_Accounts.Contains(account) == false)
{
_Accounts.Add(account);
account.RecordCustomer(this);
}
}
class SavingsAccount : Account
{
public void RecordCustomer(Customer customer)
{
if (_Accounts.Contains(customer) == true && _Owners.Contains(customer) == false)
_Owners.Add(customer);
}
}
谢谢
问题是类很可能不可访问。默认情况下,c#类具有internal
的可访问性,这意味着如果你展示的两个类在同一个程序集中(即同一个项目),那么它将工作。如果它们不在同一个程序集中,那么您将需要使SavingsAccount public
。