Я видел некоторый код С#, который объявляет класс с модификатором internal, с конструктором public:
internal class SomeClass
{
    public SomeClass()
    {
    }
}
В чем смысл создания открытого конструктора, если видимость всего класса является внутренней, поэтому его можно увидеть только внутри определяющей сборки?
Кроме того, это имеет смысл в случае, если SomeClass является вложенным классом?