2011-03-04 38 views
20

我正在開發一個網站使用Visual Studio 2008中的Asp.Net 3.5,我們使用水晶報表10(這是一起vs2008)。水晶報表13和Asp.Net 3.5

去年,我們將其遷移到Visual Studio 2010,但我們仍然在我們的網站中使用.Net 3.5。 Vs2010不包含Crystal Reports,因此我們從SAP業務對象下載Crystal 13(用於vs2010),並安裝在我的開發機器(Sdk套件和運行時)中。

它工作正常,我們將web.config中的引用從Crystal 10更改爲Crystal 13,並且它在我們的開發機器中工作。

我們仍然使用Asp.Net 3.5。現在

的問題...我主持我在我們的服務器上的網站(我還安裝運行時),我得到這個異常,提示信息:

「無法加載文件或程序集CrystalDecisions.ReportAppServer。 ClientDoc,Version = 13.0.2000.0,Culture = neutral,PublicKeyToken = 692fbea5521e1304'或其依賴項之一,系統找不到指定的文件。

在web.config中的例外:

任何人可以幫助我嗎? 是否可以使用.Net 3.5與Crystal 13?或者Crystal的其他解決方案(版本)?

編輯

<compilation debug="false" strict="false" explicit="true"> 
    <assemblies> 
     <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
     <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
     <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
     <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
     <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
     <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> 
     <add assembly="System.Web.Extensions.Design, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
     <add assembly="CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/> 
     <add assembly="CrystalDecisions.ReportSource, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/> 
     <add assembly="CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/> 
     <add assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/> 
     <add assembly="CrystalDecisions.ReportAppServer.ClientDoc, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/> 
    </assemblies> 
     <buildProviders> 
     <add extension=".rpt" type="CrystalDecisions.Web.Compilation.RptBuildProvider, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/> 
    </buildProviders> 
</compilation> 
+0

你***的System.Web部***' <添加動詞= 「GET」 路徑= 「CrystalImageHandler.aspx」 類型=「CrystalDecisions.Web.CrystalImageHandler,CrystalDecisions.Web' 和*** system.webServer部分***' Kiquenet 2017-01-25 07:18:34

+0

這是2012年的一個問題。我真的不記得了! – 2017-01-25 10:57:01

回答

28

我相信你是不是想基於你有錯誤信息來部署水晶報表於2010年VS當誰擁有的問題只有一個,你檢查:

  1. 請確保您的系統上只安裝了一個CR版本。如果您確實安裝了其他CR版本,請考慮將其卸載,以便您的應用程序不會對CR版本「感到困惑」。

  2. 您需要確保您下載正確的CR版本。由於您使用的是VS 2010,因此您需要參考CRforVS_redist_install_64bit_13_0_1.zip(適用於64位機器)或CRforVS_redist_install_32bit_13_0_1.zip(適用於32位機器)。這兩個是可重新分發的軟件包。 CRforVS_13_0_1.exe注意:您可以從下面的鏈接以及下載完整的包有時需要甚至在64位操作系統上安裝32位CR運行

  3. 讓你的根文件夾務必設置完全信任權限

  4. 必須在您的應用程序池上設置本地服務權限

  5. 確保您的根文件夾中存在aspnet_client文件夾。

如果你可以確保所有5點以上,你的水晶報表應該沒有任何大驚小怪。

這裏需要注意的另一件重要事情是,如果您將Crystal Report與共享主機一起託管,則需要與他們確認是否真的支持Crystal Report。如果仍有問題,可以切換到提供Crystal Report支持的http://www.asphostcentral.com

祝你好運!

+0

我在我的O.S.中安裝了32位版本。我不知道爲什麼會發生,但現在它運行良好!謝謝 – 2011-05-11 20:29:39

+2

如何設置根文件夾的FULL TRUST權限? Hos是否在應用程序池上設置LOCAL SERVICE權限?在這種情況下,什麼被視爲「根文件夾」? – 2012-04-04 13:55:12

+1

如何檢查「根文件夾的FULL TRUST權限」和「本地服務權限必須在應用程序池上設置」? – andy 2012-10-05 14:01:39

3

我有這個相同的問題,並確保從Web配置文件,服務器和發佈工作站中刪除所有對以前版本Crystal的引用。除了基本上完全信任user707217所做的所有事情,我做了並且適用於我的升級Web應用程序

1

我有同樣的問題。我解決了安裝this setup。 (我使用vs 2015(4.6))

0

我曾經遇到同樣的問題,因爲某些dll文件從VS13的引用中丟失。我去了位置http://scn.sap.com/docs/DOC-7824並安裝了最新的包。它解決了這個問題。