Я создаю отчет в Microsoft SQL Server Report Builder 3.0, работающий в Microsoft SQL Server Reporting Services версии 11.0.2100.60.SSRS Report Builder Как разобрать JSON из поля Dataset?
Я хотел бы проанализировать значения JSON, хранящиеся в некоторых полях из моего DataSet. Ниже представлен предварительный просмотр моего отчета с указанием значений JSON.
Выражение я ожидал (хотя и не добавляется) будет что-то вроде ниже,
=Newtonsoft.Json.Linq.JArray.Parse(Fields!MyFieldName.Value).ToString()
Поскольку мне нужно add custom or embedded code to my report быть вызвана из любого выражения, я должен add an Assembly Reference to a Report. Ссылка: Using Custom Assemblies with Reports
Итак, в свойствах моего отчета была добавлена ссылка на сборку Json.net (Newtonsoft.Json.4.5.6), как описано ниже.
Путь к сборке является C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 4\Packages\Newtonsoft.Json.4.5.6\lib\net40\Newtonsoft.Json.dll
.
Я также попытался добавить сборку в C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\PrivateAssemblies\
, а также C:\Program Files\Microsoft SQL Server\MSRS10_50.SQL2008\Reporting Services\ReportServer\bin\
и изменить ссылку на путь, но безрезультатно.
Также упоминается, что the assembly has no dependency.
До сих пор я только что добавил ссылку на сборку и ничего не изменилось. Однако, как только я включаю, чтобы просмотреть мой отчет, ошибка показывает, как описано ниже:
System.Web.Services.Protocols.SoapException: Error while loading code module: ‘Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed’. Details: Could not load file or assembly 'Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The system cannot find the file specified.
at Microsoft.ReportingServices.Library.ReportingService2010Impl.CreateReportEditSession(String Report, String Parent, Byte[] Definition, String& EditSessionID, Warning[]& Warnings)
at Microsoft.ReportingServices.WebServer.ReportingService2010.CreateReportEditSession(String Report, String Parent, Byte[] Definition, String& EditSessionID, Warning[]& Warnings)
Является ли это из-за отсутствия атрибута разрешения AllowPartiallyTrustedCallers()
в сборке? Согласно ссылке here, которая не решает мою проблему, поскольку сборка в моем случае не выполнена на заказ, и ни один другой вопрос не найден here и учебник here.
Что я делаю неправильно? Или есть ли какой-либо рабочий пример для разбора JSON в отчете SSRS?
Любая помощь будет очень полезной.
Кто-нибудь решил эту проблему? Я столкнулся с подобной проблемой –