bhagyap Ответов: 4

Проблема, связанная с Crystal Reports


Привет..

В настоящее время я работаю с одним из asp.net сайт(4.0 framework), где я использую crytal reports,который отлично работает только в localhost, а не на сервере после хостинга.

Может ли кто-нибудь, пожалуйста, дать мне знать, что может быть проблемой??

Sandeep Mewara

Вам нужно подробнее остановиться на: "нормально работает только в localhost, а не на сервере после хостинга"

bhagyap

Мой сайт работает локально,но не на удаленном сервере, это дает мне следующее исключение:-

Error System.TypeInitializationException: The type initializer for 'CrystalDecisions.CrystalReports.Engine.ReportDocument' threw an exception. ---> System.TypeInitializationException: The type initializer for 'CrystalDecisions.Shared.SharedUtils' threw an exception. ---> System.IO.FileLoadException: Could not load file or assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) at CrystalDecisions.Shared.SharedUtils..cctor() --- End of inner exception stack trace --- at CrystalDecisions.Shared.SharedUtils.GetClientCulture() at CrystalDecisions.CrystalReports.Engine.CREngineRes.GetString(String name) at CrystalDecisions.CrystalReports.Engine.ReportDocument.CheckForCrystalReportsRuntime() at CrystalDecisions.CrystalReports.Engine.ReportDocument..cctor() --- End of inner exception stack trace --- at CrystalDecisions.CrystalReports.Engine.ReportDocument..ctor()

не могли бы вы мне помочь?

4 Ответов

Рейтинг:
9

PhilMcGahan

Мне пришлось перекомпилировать свою dll, изменив целевой процессор с "любого" на "x86", и это исправило ситуацию.


Member 7757427

Спасибо - ваше решение сработало для меня!!!

Рейтинг:
29

vangapally Naveen Kumar

Смотрите ссылку ниже вы можете получить некоторое представление
http://www.manjuke.com/2009/07/type-initializer-for-threw-exception.html[^]

а насчет исключения

Первое, что нужно проверить, это:

1) архитектура (x86, x64)
2)Версия Crystal Runtime



TypeInitializationException occurs when a static constructor has an error. It is thrown from static constructors. It actually wraps the errors from static constructors. It cannot be trapped outside of the static constructor reliably.
The Below Program Shows How this error will come

using System;

class Program
{
    static Program()
    {
	//
	// Static constructor for the program class.
	// ... Also called a type initializer.
	// ... It throws an exception in runtime.
	//
	int number = 100;
	int denominator = int.Parse("0");
	int result = number / denominator;
	Console.WriteLine(result);
    }

    static void Main()
    {
	// Entry point.
    }
}

Output

Unhandled Exception: System.TypeInitializationException: The type initializer for
'Program' threw an exception. --->
System.DivideByZeroException: Attempted to divide by zero.
   at Program..cctor() in....
   --- End of inner exception stack trace ---
   at Program.Main()


Рейтинг:
23

Sandeep Mewara

System.IO.FileLoadException: не удалось загрузить файл или сборку 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' или одну из его зависимостей. Определение манифеста расположенной сборки не соответствует ссылке на сборку
Вышеописанная ошибка просто означает: вы используете Log4Net для регистрации ошибок, которые отсутствуют на сервере.

Убедитесь в том, что log4Net.dll присутствует на сервере. Версия сборки должна быть такой же, как указано в вашем проекте. Даже несоответствие версии сборки вызовет здесь ошибку.
Либо установите его, либо поместите dll в папку bin вашего приложения.


bhagyap

спасибо за ваш ответ.. библиотека dll уже присутствует на сервере, и все еще мои отчеты не работают.

Рейтинг:
0

Nery Gonzalez

У меня была та же проблема. Установка как 32, так и 64-битных версий CR runtime решила эту проблему.

Мой проект был настольным приложением.


kosportel

У меня такая же проблема с настольным приложением. В моем случае я не хотел бы делать какую-либо установку на клиентских компьютерах, поэтому я распространяю библиотеки DLL Crystal Report. Однако проблема появилась. Как вы думаете, могу ли я распространять только библиотеки DLL или требуется установка?