Visual Studio 2013:创建一个没有nuget的新ASP.Net项目

Sha*_*wan 6 .net visual-studio nuget

首先,我想说我一般都喜欢nuget,并且在许多小项目中使用它很多,尤其是在尝试新事物时.

但是,我有很多理由认为Nuget不适合我的主要项目/环境:

  • 代码被部署到安全的环境中 - 因此需要高级别的监督
  • 这是一个相当大的项目,约有10名开发人员,他们需要花费数年时间 - 通过快速添加软件包节省的时间可以忽略不计.
  • 我对图书馆自动更新没兴趣
  • 我想知道在采用新库时正在进行哪些配置,除了"合理默认"之外我还有其他选择.

简而言之,我想知道我的项目会发生什么,Nuget在"帮助我"方面过于咄咄逼人,而不是我能忍受.

所以当我创建一个支持MVC和WebAPI的新"空"asp.net项目并发现自己配置了8个nuget包时,我真的很失望.这些文件中的大部分都是浪费的(我真的不需要每个版本的.Net框架都有JSON.Net,但是谢谢).

为了获得没有nuget的类似设置,我做了以下事情:

  1. 藏匿了web.config的副本
  2. 将我感兴趣的所有DLL复制到一个新文件夹中
  3. 卸载所有nuget包
  4. 引用了我想要的DLL
  5. 重新添加了必要的web.config位

啊,我们走了.好多了.

然后我继续并右键单击Controllers文件夹>添加控制器并右键单击views文件夹和>添加视图.

令人费解的是,nuget包文件又回来了,并通过添加"帮助我"

  • jQuery的
  • jquery验证
  • jquery不显眼的验证.

谁说我想用jquery验证?!

所以我的问题是:我如何阻止这种疯狂?如果我不想使用nuget,我注定要围绕VS工具做脚尖?

或者,我也会接受一个令人信服的论点,解释说我对我的项目中的内容有不必要的肛门保留,应该只喝Kool-Aid.

dus*_*ris 1

我看不出您不想使用 NuGet 的原因。以下是我对此的想法:

代码被部署到安全的环境中 - 因此需要高水平的监督

这与 NuGet 无关。如果您需要高水平的监督,那么您需要的是一个良好的分支和发布策略以及您选择的源代码控制。代码审查政策等

这是一个相当大的项目,大约有 10 名开发人员,跨度数年 - 快速添加包节省的时间可以忽略不计。

NuGet 并不是要快速添加依赖项。这是关于有效管理您的依赖关系。那么问题来了,你会有依赖吗?如果是,那么您为什么要拒​​绝使用可以帮助您以不太可能犯错误的方式管理它们的工具呢?

我对库自动更新不感兴趣

NuGet 不会自动更新您的库。

但是,它会在一个位置向您显示所有可用更新,您可以选择要接受哪些更新。这是一个很棒的功能,我不明白为什么这会打扰您。老实说,如果您不使用 NuGet,您更有可能错过非常重要的更新。如果 Microsoft 修复了其中一个 MVC 库中的严重安全问题怎么办?

NuGet 将

  • 显示可用的更新
  • 帮助您在所有依赖更新库的地方应用更新
  • 帮助您为您的目标项目选择正确的版本

我想知道在采用新库时进行了哪些配置,以及除了代表我确定的“合理默认值”之外我还有哪些其他选项。

这与 NuGet 无关。无论您是通过 NuGet 还是手动使用第三方库,在这两种情况下,您都必须阅读该库的文档,以便就如何配置项目做出明智的决定。

唯一的区别是,通过安装 NuGet 包,它更有可能附带开箱即用的合理配置。所以实际上你只能从中受益。如果您想更改配置,那么更改哪个默认值并不重要,对吗?