asp.net-core - .net 核心本地开发的项目组织
问题描述
我对 dotnet 开发相对较新,并且在如何设置本地开发环境时遇到问题。我有一个asp net core rest api,它在内部使用不同的“服务”。该项目相对较大,因此我们将服务拆分为外部库,我们通过依赖项引入这些库。这工作得很好。我唯一的问题是在集成新服务或开发现有服务的新功能时,我想用我的新本地构建服务构建/测试 api。
这可能吗?处理这个用例会很容易吗?在开发过程中删除外部依赖并添加本地依赖?我在stackoverflow上搜索并搜索了这里,但没有找到任何解决方案。
谢谢你的帮助!
问候
塞巴斯蒂安
解决方案
要进行调试nuget packages
,您可以使用符号包与您的dlls
. Visual studio
支持允许下载符号和调试源代码的符号源。但问题可能更深...
理想情况下,外部库应该有一个稳定的接口,可以通过库本身附近的自动测试进行测试。即使是重大更改也不应该在调用代码中引起任何更改和问题。在这种情况下,在开发过程中删除外部依赖并添加本地依赖应该没问题,因为它很少采取行动。
如果你需要经常调试你的包,这意味着这两个部分经常一起改变。它可以发出下列问题的信号:
- 你的代码和包的代码耦合度很高。未成功选择模块之间的边界。在这种情况下,请考虑重新设计这两个部分以使它们更加独立并减少耦合。独立的部分通常不需要一起调试。
- 两个部分都具有很高的凝聚力。在这种情况下,你肯定需要把它放在一起。
- 库的界面不稳定。在这种情况下,将它们保持在一起,直到接口变得稳定。
推荐阅读
- python - 从 Flask 蓝图访问数据库
- cocoapods - 如何通过 Podfile 的源语句访问分支?
- java - iText:用图像设置表格单元格的高度
- flutter - Flutter:如何在 Country Pickers DropDown 库中设置值
- python - 无法使用 df.at 更改 DataFrame 值
- bash - Bat/Cmd 与 Sh/Bash 参数“stat”-like 扩展
- webforms - webscan 不喜欢我的 x-xss-protection 标头 - 有什么想法吗?
- python - 有没有办法为用户定义的函数调用和存储excel文件?
- netlogo - 在不使用 Levelspace 或 Hubnet 的情况下在两个模型之间传递信息
- c# - 如何使按钮大小为窗口大小的三分之一?WPF C#