相关疑难解决方法(0)

.NET - 如何创建一个类,只有一个其他特定的类可以实例化它?

我想要进行以下设置:

class Descriptor
{
    public string Name { get; private set; }
    public IList<Parameter> Parameters { get; private set; } // Set to ReadOnlyCollection

    private Descrtiptor() { }
    public Descriptor GetByName(string Name) { // Magic here, caching, loading, parsing, etc. }
}

class Parameter
{
    public string Name { get; private set; }
    public string Valuie { get; private set; }
}
Run Code Online (Sandbox Code Playgroud)

从XML文件加载后,整个结构将是只读的.我想这样做,只有Descriptor类可以实例化一个参数.

一种方法是创建一个IParameter接口,然后Parameter在Descriptor类中使类成为私有,但在实际使用中,Parameter将有几个属性,我想避免重新定义它们两次.

这有点可能吗?

.net c# class access-modifiers c#-3.0

9
推荐指数
1
解决办法
3694
查看次数

标签 统计

.net ×1

access-modifiers ×1

c# ×1

c#-3.0 ×1

class ×1