我在一个文件夹中有一个 Visual Studio 项目,比如 C:\project_name\app_name.csproj,它的结构类似于 C:\project_name\controllers。我想告诉这个项目文件总是查看抄送结构文件夹,比如 C:\custom_project_name\controllers\看看那里是否有任何文件,如果有,覆盖基础项目中的内容。这不会编译基础项目中的自定义文件。它会改为使用同名文件的自定义项目版本。
这可能吗?如果这在某种程度上是重复的,请提前道歉,但我什至不知道在外面搜索答案时该怎么调用它。
最佳答案
稍后我会为您省去一些噩梦,并建议您(可能)真正寻找的是 Strategy design pattern .
这使您可以在编译时(甚至在启动时)使用更易于维护和发现的更清晰的代码来管理这些自定义实现。
- 对您的 Controller 进行编程,以将注入(inject)的依赖项用于可自定义的逻辑
- 利用这个 inversion of control通过相同的接口(interface)提供默认逻辑
- 在启动时查找任何自定义逻辑并“使用”,这要归功于 IoC
关于c# - 你能在 Visual Studio 构建过程中从不同的文件夹中获取 "lay over"代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57340298/