在浏览 NuGet 时,我注意到我已经安装了几个包,EF 和 SQL Server CE。这提出了几个我无法找到任何信息的问题。
在 EF 包上,这添加了 VS 中尚不存在的什么,或者它只是为您完成所有参考工作?
在 SQL Server CE 包上,安装它没有添加什么?或者这只是一种更好的安装方式。
设置环境肯定需要很多时间,我喜欢 NuGet 用于其他包,但我不想破坏任何东西,除非从长远来看它最终会使我受益。任何评论、答案或轶事都会很棒。
在浏览 NuGet 时,我注意到我已经安装了几个包,EF 和 SQL Server CE。这提出了几个我无法找到任何信息的问题。
在 EF 包上,这添加了 VS 中尚不存在的什么,或者它只是为您完成所有参考工作?
在 SQL Server CE 包上,安装它没有添加什么?或者这只是一种更好的安装方式。
设置环境肯定需要很多时间,我喜欢 NuGet 用于其他包,但我不想破坏任何东西,除非从长远来看它最终会使我受益。任何评论、答案或轶事都会很棒。
NuGet 绝对是所有二进制引用甚至项目工具(例如 NUnit 等)的前进方向。
我建议引入组合的 EntityFramework.SqlServerCompact 包。这将为每个添加最新的二进制文件,并连接正确的提供程序工厂配置,并在 App_Start 文件夹中添加一个 WebActivator 以进行连接工厂初始化。WebActivator 在 ASP.NET 和 Web 窗体中都可以工作,但在非基于 Web 的项目中总是会导致编译错误,但这没什么大不了的。
它添加的另一件事是,这些程序集现在已被 bin 部署,并且是您的解决方案的一部分。例如,如果您将包文件夹作为项目的一部分提交,并且有人检查了它但没有安装 EF 或 SQLCE,则该项目仍然可以编译和工作。他们不需要去寻找 MSI 安装程序。
其次,如果您部署到 GAC 中没有这些 DLL 的服务器(大多数都没有),那么您仍然可以,因为它们将设置为“将本地复制为真”。