5

具体而言,我们正在尝试将我们的telerik控件升级到最新版本。不幸的是,旧的DLL很老,很多控件属性发生了很大的变化,所以我们决定只升级给我们提供问题的Telerik控件(RadEditor控件)。如何允许两个DLL具有相同的namespace.class以存在于同一个应用程序中?

所以垃圾桶看起来是这样的:

RadChart.Net2.dll 
RadEditor.Net2.dll (we want to get rid on only this one) 
RadGrid.Net2.dll 
RadInput.Net2.dll 
RadPanelbar.Net2.d 
RadSpell.NET2.dll 
RadTabStrip.Net2.d 
RadToolbar.Net2.dl 
RadTreeView.Net2.d 
RadUpload.Net2.dll 
RadWindow.Net2.dll 
Telerik.Web.UI.dll (this is the new DLL) 

的问题是,所有的命名空间和类是从旧的DLL到新的(Telerik.Web.UI)相同。

这是我收到的具体错误:

Compilation Error 

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately. 

Compiler Error Message: CS0433: The type 'Telerik.Charting.ChartSeries' exists in both 'c:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\root\c6516654\63e1c826\assembly\dl3\9aa96a66\00ba04b3_fd85c701\RadChart.Net2.DLL' and 'c:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\root\c6516654\63e1c826\assembly\dl3\8fdb0e6c\001aa55c_c4f9c901\Telerik.Web.UI.DLL' 

我认为GAC-ING新的DLL,但我不确定这会帮助的情况。任何帮助将不胜感激。

回答

10

您可以使用extern别名(tutorialreference)区分它们。这是非常烦人的,不得不承认 - 显然要避免在可能的地方,但至少C#提供了一个方法:)

+0

看起来像这是一个很好的解决方案,但我们正在使用一个网站(所以我们不能用别名DLL - 一切都在仓中)。 – sestocker 2009-07-23 16:19:45

相关问题