首先,我想说的是,我总体上喜欢 nuget,并且在许多小型项目中经常使用它,尤其是在尝试新事物时。
但是,我认为 Nuget 不适合我的主要项目/环境的原因有很多:
- 代码被部署到一个安全的环境中——因此需要高度的监督
- 这是一个相当大的项目,有大约 10 名开发人员跨越数年 - 通过快速添加包节省的时间可以忽略不计。
- 我对库自动更新不感兴趣
- 我想知道在采用新库时进行了哪些配置,以及除了代表我确定的任何“合理默认值”之外我还有哪些其他选项。
简而言之,我想知道我的项目会发生什么,而 Nuget 在“帮助我”方面过于激进,我无法忍受。
因此,当我创建一个支持 MVC 和 WebAPI 的新“空”asp.net 项目并发现自己配置了 8 个 nuget 包时,我真的很失望。这些文件中的大部分都是浪费的(我真的不需要 JSON.Net 用于每个版本的 .Net 框架,但是谢谢)。
为了在没有 nuget 的情况下获得类似的设置,我执行了以下操作:
- 隐藏 web.config 的副本
- 将我感兴趣的所有 DLL 复制到一个新文件夹中
- 卸载所有nuget包
- 引用了我想要的 DLL
- 重新添加了必要的 web.config 位
啊,我们走了。好多了。
然后我继续并右键单击控制器文件夹>添加控制器并右键单击视图文件夹和>添加视图。
令人费解的是,nuget 包文件又回来了,并通过添加“帮助了我”
- jQuery
- jQuery 验证
- jquery 不显眼的验证。
谁说我想使用 jquery 验证?!
所以我的问题是:我如何阻止这种疯狂?如果我不想使用 nuget,我是否注定要在 VS 工具上蹑手蹑脚?
或者,我也会接受一个令人信服的论点,解释说我对项目中的内容有不必要的保留,应该只喝 Kool-Aid。