eid*_*lon 17 .net vb.net compiler-construction reference version
好的,我是Telerik控件库的重要用户,专门用于ASP.NET.但是,我想在一些控件中添加一些功能.现在我可以使用Extension方法轻松完成这项工作.所以我写了一个小型图书馆.显然,这个库需要引用它们的DLL(Telerik.Web.UI.dll).
在My Project > References我的DLL项目的页面中,我有一个参考Telerik.Web.UI.dll.对于此参考,我将Specific Version属性设置为False,因为我不希望我的库关心正在使用的Telerik DLL的版本.这是我的问题但是...... .NET编译器似乎不尊重这个设置.
例如,我有一个网站,它引用了Telerik DLL和我的.我将Telerik库更新到最新版本.现在,当我尝试运行我的网站时,我得到:
Could not load file or assembly 'Telerik.Web.UI, Version=2012.1.215.40, Culture=neutral, PublicKeyToken=121fae78165ba3d4' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
我通过转到我的DLL项目,针对最新的Telerik DLL重新编译它,然后在网站中更新我的DLL来解决这个问题.这正是我每次更新Telerik库时都不想要做的事情.我认为将特定版本设置为false意味着它适用于任何版本.没有?或者我完全误解了那个设置的作用?
您应该考虑使用它,它允许您指示 .NET 框架在运行时bindingRedirect使用另一个版本的程序集(即,如果您的项目是针对版本 1.0 编译的,它仍然可以使用版本 1.1,假设没有 API 更改)。
Specific Version属性仅适用于编译时程序集引用。