我一直在尝试更新我的Ninject,以免遇到this bug,而我无法弄清楚我的Ninject.Web.Common
版本。
这是来自packages.config的一行
package id =“Ninject.Web.Common”version =“3.2.3.0”...
但是,csproj包含以下行
参考Include =“Ninject.Web.Common,Version = 3.2.0.0 ...”
这里的参考版本究竟是什么意思?
答案 0 :(得分:2)
packages.config中的版本是nuget将从服务器获取的版本。因此,当您运行nuget restore
时,这将是下载的版本。
第二个是程序集在运行时搜索的版本。如果您不从GAC加载依赖项,则将忽略该版本。仅当您的应用程序从GAC加载其程序集时,才会考虑该版本,并且CLR尝试查找具有指定版本的程序集。因为在GAC中可以存在同一程序集的多个版本。
有关编译时依赖性的详细信息,请查看此Question。