2009-10-21 1 views
2

Я создал веб-сайт ASP.NET3.5, в котором есть crystalreportviewer, он отлично работает, если я запускаю визуальную студию 2008 или свою собственную машину. Но когда я развернул проект на веб-сервере, он начал давать мне ошибку.Crystal Reports Viewer в ASP.NET3.5 App

Во-первых, на первой странице было дано сообщение об ошибке Не удалось найти сборку CrystalDecision.web, после чего я установил Crytal Runtime 2008 на свой веб-сервер. После установки приложение выглядит нормально, но когда я открыл страницу с помощью CrystalReportViewer, это дало мне другую ошибку:

Определенное определение манифеста сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040)

Любые идеи об этом ??

ответ

1

Проведя почти 2ч я наконец нашел исправить.

  1. Удалить время выполнения Crystal Reports с веб-сервера.
  2. Проверьте, есть ли у веб-сервера файлы \ program files \ Business object, если они все еще существуют, а затем удалите его. Убедитесь, что другие приложения не зависят от него.

  3. Give Чтение и запись прав доступа к пользователю ASPNET на \ Windows \ Temp папку

  4. Установка Crystal Report во время выполнения в настоящее время.
  5. Restart IIS

После этих шагов должно решить проблему просмотра Crystal Report.

Но еще одна проблема возникает, кристалл просмотра отчетов не показывает значки, причина зритель кристалл отчет выглядит для aspnet_client \ system_web \ 2_0_50727 папку в корневой папке сайта. В моем случае у меня есть несколько сайтов на моем сервере, включая .NET 1.1, 2.0 и ASP, поэтому у меня есть папка wwwrootASP2.0 для этого веб-сайта. Но по умолчанию веб-сервер создал aspnet_client \ system_web \ 2_0_50727 папка по умолчанию (wwwroot). Итак, исправление, просто скопируйте папку aspnet_client \ system_web \ 2_0_50727 в корневой каталог вашего сайта. Бинго !!!!!! Теперь он отлично работает.

Надеюсь, это поможет,

Cheers.

1

Возможно, у вас есть несколько разные версии хрустальных сборок на сервере и вашей машине разработки. Сравните номера версий в c: \ windows \ assembly на обоих и посмотрите, есть ли разница. Если есть, либо обновите сервер, либо измените номера версий для сборок в web.config.

Кроме того, The located assembly's manifest definition does not match the assembly reference

+0

Hi, Спасибо за ответ. Я сделал все, и теперь он дал мне ошибку Инициализатор типа для «CrystalDecisions.CrystalReports.Engine.ReportDocument» сделал исключение. Любая идея ?? – Zinx

+0

Ваше письменное в вышеуказанном комментарии, Инициализатор типа для 'CrystalDecisions.CrystalReports.Engine.ReportDocument' бросил исключение – Zinx

0

Я просто хотел добавить, что проще создать виртуальный каталог под вашим веб-приложением aspnet_client, который указывает на C: \ Inetpub \ wwwroot \ aspnet_client.

Это также отображает изображения на экране просмотра отчетов Crystal. Он был протестирован с Visual Studio 2008 Crystal Basic на IIS, запущенном на сервере 2003.

Я понял это после прочтения http://social.msdn.microsoft.com/Forums/en-US/vscrystalreports/thread/e2dc93b3-e594-4ae6-ba92-9440ccc7f6be.