2013-03-07 15 views
8

Wstęp:Jak rozwiązać błąd Deployment Report Kiedy Odwoływanie System.Core (4.0) pod SSRS 2008R2

Development Environment: Visual Studio 2010 z ofertami + MSSQL 2012 na lokalnym polu

Środowisko produkcyjne: MSSQL 2008 R2 dla serwera raportów Live

Mam problem z wdrożeniem raportu podczas odwoływania się do System.Core w moim raporcie. Błąd jest poniżej.

Błąd podczas ładowania modułu kod: „System.Core, Version = 4.0.0.0, Culture = neutral , TokenKluczaPublicznego = b77a5c561934e089”. Szczegóły: nie można załadować pliku lub zespołu "System.Core, wersja = 4.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089 'lub jedna z jego zależności. Ten zespół jest zbudowany przez środowisko wykonawcze nowsze niż aktualnie załadowany środowisko wykonawcze i nie można go załadować.

Odwołuję się do SystemCore w moim raporcie, dzięki czemu mogę korzystać z klasy TimeZoneInfo. Widziałem inne pytania dotyczące korzystania z tej klasy w SSRS i nie byłem w stanie rozwiązać problemu po żadnej z porad w tych pytaniach.

REF

Working with Time Zones in SSRS

SSRS 2k8, custom dll, file not found

Reporting Services 2012 deploy error: "Error while loading code module"

mogę odwołać System.Core 4.0 i uruchomić lokalnie bez problemu; jednak po wdrożeniu otrzymuję powyższy komunikat o błędzie. Aby wyjaśnić dalej ... dzieje się to PODCZAS procesu wdrażania, a nie po wdrożeniu i próbie uruchomienia raportu na serwerze.

EDIT

Raport RDL XML CodeModules wygląda następująco:

<CodeModules> 
<CodeModule>System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 

To o tyle "osadzanie" mogę powiedzieć, że to robi. Naprawdę jest to po prostu odwołanie do zgromadzenia od jego wyglądu.

Pomoc zostanie bardzo doceniona.

ROZWIĄZANIE Ponieważ nie można odwołać 4.0, można odwoływać się od 3,5 do uzyskania dostępu do klasy TimeZoneInfo.

Krok 1. Tworzenie klasy otoki dla logiki TimeZoneInfo chcesz zatrudnić

Krok 2. Cel 3,5

Krok 3.Utwórz wersję Release i skopiuj ją do katalogu [DRIVE]: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ PrivateAssemblies, aby projektant mógł go załadować.

Krok 4. Wdróż ten sam zespół do SQL Server @ następujący folder: [DRIVE]: \ Program Files \ Microsoft SQL Server \ MSRS10.SQL2008 \ Reporting Services \ ReportServer \ bin \

Teraz możesz wdrożyć swój raport. Więc moje błędy były następujące

  1. nie odwoływać 3.5

  2. nie skopiować do odpowiedniego katalogu na mój wizualny przykład studio odebrać montaż. Przeniosłem moją instalację do innego katalogu i nie umieściłem jej w nowej ścieżce.

UPDATE Jeśli ktoś próbuje ref .NET 4.0 ins SSRS 2012 i powyżej i nadal jest błąd, odpowiedź jest prosta. SSRS 2012 i 2014 (?) Nadal nie obsługują .NET 4.0

source

To zdaje się sugerować, że SSRS 2014 nie obsługuje albo (Jestem oniemiały, MICROSOFT!) MS KB

+0

Czy próbowałeś umieścić wersję używanego zestawu, aby projektant raportów miał do niego dostęp. Możliwe, że proces wdrażania przeprowadza sprawdzenie wersji przy użyciu folderu .. \ Visual Studio 8 \ Common7 \ IDE \ PrivateAssemblies, a nie folderu serwera raportów. Jestem pewien, że właśnie tam SSRS szuka osadzonych złożeń w czasie projektowania. Jest to prawdopodobnie ostrzeżenie, a nie błąd. –

+0

Zestawem jest System.Core, który znajduje się w GAC. Właśnie dlatego jestem taki zdezorientowany. Jeśli jest w GAC, dlaczego nie jest "odbierany"? – Hardrada

+0

Ponieważ renderowanie i przetwarzanie raportów nie opiera się na .NET w taki sam sposób, jak aplikacje sieci Web/formularzy, przypuszczam, że SSRS traktuje każdy osadzony zespół w pliku .rdl jako niestandardowy zespół. –

Odpowiedz

0

Zgodnie z wnioskiem:

ROZWIĄZANIE

Ponieważ nie można odwołać 4.0, można odwoływać się od 3,5 do uzyskania dostępu do Klasa TimeZoneInfo.

Krok 1. Tworzenie klasy otoki dla logiki TimeZoneInfo chcesz zatrudnić

Krok 2. Cel 3,5

Krok 3. Zbuduj wersja release i skopiować go do swojej [dysk]: \ Program Katalog Pliki (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ PrivateAssemblies, aby Twój projektant mógł go załadować

Krok 4. Wdróż ten sam zestaw do SQL Server @ w następującym folderze [DRIVE]: \ Program Files \ Microsoft SQL Server \ MSRS10.SQL2008 \ Reporting Services \ ReportServer \ bin \

Teraz możesz wdrożyć raport. Więc moje błędy były następujące

nie odwoływać 3.5

nie skopiować do odpowiedniego katalogu na mój wizualny przykład studio odebrać montaż. Przeniosłem moją instalację do innego katalogu i nie umieściłem jej w nowej ścieżce.

Powiązane problemy