我正在开发一个类库项目,该项目为客户端应用程序提供了许多有用的扩展方法。该项目预计将用于各种平台(.NET 框架的版本)。
为此,我将使用几个单独的 Visual Studio 项目,每个项目用于自己的平台。这些项目可以有自己的外部依赖项,尽管源代码将使用“添加为引用”功能在它们之间共享。这种方法将允许我通过在一个文件中编写代码来更改所有项目的实现,而无需将其复制到其他项目。记住目标框架的差异,我需要使用#if
编译器指令。每个项目的结果将作为特定版本的 .NET 框架的 NuGet 包发布。
这是我有两个问题:
- 每个新文件都必须添加到每个项目中,否则将无法编译,并且其中定义的每个类都无法在某些平台上访问。你可以意识到很容易忘记这一点。有没有办法避免这种文件跟踪?有可能实现自动化吗?
- 我怎样才能改善整个基础设施?您在项目中使用了哪些方法和/或解决方案?