现在我以编程方式生成源代码并在编译之前创建一些类,显然将它添加到解决方案中的项目中.也许有可能在编译之前"静默地"添加类而不在磁盘中创建.cs文件而不在解决方案资源管理器中显示这些类(可能使用Roslyn).
编辑:我不能使用任何运行时代码生成.
此模式使用抽象工厂,然后是工厂的实现。
我确信这两个类有一个标准的命名约定,但我不知道它是什么。
例如:
public abstract class ChocolateFactory { };
public class MyChocolateFactory { } : ChocolateFactory
这里的标准约定是什么?
我在想 ChocolateFactoryBase 或 ConcreteChocolateFactory,但也许还有别的东西(很像 Enums 往往以 Enum 为后缀,例如PetTypeEnum这样你就可以做PetTypeEnum PetType;
希望这不是主观的。