make sure object only created by factory (C#)
问题 How do I make sure that a certain class is only instantiated by a factory and not by calling new directly? EDIT: I need the factory to be a separate class (for dependency injection purposes) so I can't make it a static method of the class to be instantiated, and so I can't make new private. 回答1: If, for some reason, you need the factory and the constructed class to be in separate assemblies (which means simply using internal won't work), and you can ensure that your factory gets a chance to