我有一个包含应用程序项目(ASP.NET Core)和多个库项目的解决方案。我想将一些库项目分离到一个单独的解决方案中,并将它们转换为 NuGet 包。
使用同一解决方案中的库,我当然可以简单地编辑库中的某些内容,运行应用程序并查看它是如何工作的(并在必要时进行调试)。
但是,当我将库转换为 NuGet 包时,应用程序会引用我们的私有 NuGet 源中的包,而不是项目文件。
我的问题是:是否可以在本地“覆盖”包引用并使用本地源代码?这样我仍然可以编辑库并查看应用程序中的效果。这比必须为每个小更改发布新包要容易得多(特别是在尝试解决问题或实现新功能时)。
我们当前正在将一个项目从 .NET Framework 迁移到 .NET Core 3.1,但在使某些 T4 模板正常工作时遇到问题。这些模板从我们的解决方案导入一个或多个程序集,以便使用反射生成代码。这些程序集是 .NET Core 3.1 库。问题似乎是 Visual Studio 2019 中的 T4 引擎在 Framework 上运行,无法正确加载核心程序集。
运行模板时,我得到一个ReflectionTypeLoadException. 检查异常后,很明显 T4 引擎找不到System.Runtime. 有一些解决方法(此处),但是当我应用它时,只会将问题转移到下一个依赖项,即 NuGet 包。所以解决方法不起作用。
有没有办法让 T4 模板与 .NET Core 3.1 程序集一起使用?或者是否有与 .NET Core 3.1 一起使用的 T4 模板的类似替代方案?