2011-09-13 470 views
1

所以我有一個頁面,假設顯示各種報告。這工作正常,當我運行與舊報告的應用程序。但是,當我運行應用程序與新版本的報告,我得到這個錯誤。如何解決asp.net運行時錯誤

 ASP.NET runtime error: The base class includes the field 'reportViewer', 
    but its type (CrystalDecisions.Web.CrystalReportViewer) 
    is not compatible with the type of control 
(CrystalDecisions.Web.CrystalReportViewer). 

從我收集的尋找這個錯誤的解決方案,它是與CR(水晶報表),運行的是一個不同的或更新的版本。但是從我所知道的,我沒有改變或更新CR。

我已經保存在我的web.config,因爲我與水晶報表使用引用的版本是:

<add assembly="CrystalDecisions.Web, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 
    <add assembly="CrystalDecisions.Shared, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 
    <add assembly="CrystalDecisions.ReportSource, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 
    <add assembly="CrystalDecisions.Enterprise.Framework, Version=12.0.1100.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 
    <add assembly="CrystalDecisions.Enterprise.Desktop.Report, Version=12.0.1100.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 
    <add assembly="CrystalDecisions.ReportAppServer.Controllers, Version=12.0.1100.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 
    <add assembly="CrystalDecisions.CrystalReports.Engine, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 
    <add assembly="CrystalDecisions.ReportAppServer.DataDefModel, Version=12.0.1100.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 
    <add assembly="CrystalDecisions.Enterprise.InfoStore, Version=12.0.1100.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 
    <add assembly="CrystalDecisions.Enterprise.Viewing.ReportSource, Version=12.0.1100.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304"/> 

我被先前的開發商給的解決方案是手動修改的.csproj文件,用正確版本12替換版本#雖然,這導致我有一個與VS錯誤無法找到System.Web.Extentions.dll。

所以我想知道的是,我的應用程序究竟有什麼問題,我該如何糾正這個問題。

+0

您是否在調整csproj內容時修改了目標框架版本?這可能會導致無法加載System。* DLL。 –

回答

3

我認爲第一步應該是卸載您的開發機器上的每個版本的水晶,並且只安裝與服務器上存在的完全相同的水晶。

如果以前的開發人員說要手動修改.csproj,那麼它有理由說你要麼有錯誤的版本,要麼你有多個版本,並且它在某處變得困惑。

0

當我的應用程序加載相同的程序集兩次時,我有類似的錯誤消息。我想我們正在使用CAB來加載程序集。在某些時候,程序集CAB列表需要加載每個程序集兩次,一次是8.3文件名格式,一次是長文件名格式。 CAB認爲他們是不同的集會並且加載他們兩個。我不記得那是怎麼發生的。但是當我們確定上述問題消失後。

相關問題