Wenn ich richtig informiert bin, macht man aber auch in C# solche Klassen, über die wir hier sprechen nicht internal sondern public, auch wenn man sie direkt nicht benutzt bzw instanziiert.
Denn auch dort schreibt man DI Container Code ja nicht direkt in diesen Namespace sondern hat einen extra Codebereich dafür (oder machts über
XML).
Womit wir wieder beim gleichen "Problem" wären. Man versteckt die Klassen ja nicht, damit irgendein unwissender Entwickler sie nicht aus Versehen benutzt.