如何在一个对象中调用另一个对象的内部类中的方法

问题遇到的现象和发生背景

这是一个小的实例,我想请问如何创建store对象,才能让外部能调用它的内部对象并执行内部对象的方法

希望达到的效果
class Program
{
    static void Main(string[] args)
    {
        // 1. 创建一个 存储 对象
        Store store = new Store();

        // 2. 调用内部对象StaffDB的Add方法
        store.StaffDB.Add("admin", "admin", admin: true);

        // 3. 调用内部对象StaffDB的Login方法
        if (store.StaffDB.Login("admin", "admin"))
        {

            // 4. 调用内部对象CustomerDB的Add方法
            store.CustomerDB.Add(
                name: "Ted",
                surname: "Lasso",
                phone: "0498-123-123",
                address: "2 Fake St",
                email: "tedlasso@email.com",
                id: 1
            );
        }
        
        // 5. 调用store的Destroy方法
        store.Destory();
    }
}
我预想的Store对象的结构
public class Store
{   
    // 私有变量,存储一些数据,内部类会用到它的值
    internal int _id;

    // 我觉得这个对象应该是个静态的,不然没法实现访问
    // (实例化后的)store.Staff.Add()方法,但是静态内部方法也不可能调用到外部的属性
    // 请指点我该如何设计Store类才能满足要求
    public static class Staff
    {
        public static void Add()
        {
            Console.WriteLine("执行了内部类Staff中的Add方法");
            // 我想在这获取被实例化后的_id的值
        }
    }
};

麻烦指点一下,如何设计Store对象才能达到效果,谢谢

示例如下:

// 1. 创建一个 存储 对象
Store store = new Store();

// 2. 调用内部对象StaffDB的Add方法
store.StaffDB.Add("admin", "admin", admin: true);

// 3. 调用内部对象StaffDB的Login方法
if (store.StaffDB.Login("admin", "admin"))
{
    // 4. 调用内部对象CustomerDB的Add方法
    store.CustomerDB.Add(
        name: "Ted",
        surname: "Lasso",
        phone: "0498-123-123",
        address: "2 Fake St",
        email: "tedlasso@email.com",
        id: 1
    );
}



// 5. 调用store的Destroy方法

store.Destory();

public class Store
{
    public StaffDB StaffDB { get; set; }
    public CustomerDB CustomerDB { get; set; }
    public void Destory()
    {

    }
}

public class StaffDB
{
    public void Add(string p1, string p2, bool admin)
    {
        Console.WriteLine("执行了内部类Staff中的Add方法");
    }

    public bool Login(string username, string password)
    {
        return true;
    }
}

public class CustomerDB
{
    public void Add(string name, string surname, string phone, string address, string email, int id)
    {

    }
}

我还写了一系列的C#编程教程,供参考:

静态类和静态方法直接用类名称调用,而不是实例对象。不过既然提供给其他类访问,干嘛放内部?

Store.Staff.Add();

img

如果是需要调用Store内部的方法,需要将Store类内部的方法声明为public