Средство просмотра отчета - Запрос на разрешение типа SqlClientPermission перестал работать

Примерно так:

val ranges = List((1, 4), (5, 8), (9, 10))
val nums = List(2, 2, 3, 7, 8, 9)

val occurences = ranges.map { case (l, r) => nums.count((l to r) contains _) }
val map = (ranges zip occurences).toMap

println(map) // Map((1,4) -> 3, (5,8) -> 2, (9,10) -> 1)

По сути, сначала вычисляется количество вхождений, [3, 2, 1]. Оттуда легко построить карту. И способ вычисления вхождений таков:

  • просмотреть список диапазонов
  • преобразовать каждый диапазон в число вхождений для этого диапазона, что делается следующим образом:
    • Сколько чисел из списка nums содержится в этом диапазоне?

РЕДАКТИРОВАТЬ: Не уверен, почему этот ответ получает отрицательный голос, возможно, я как-то неправильно понял вопрос .

6
задан CuppM 4 November 2008 в 21:46
поделиться

3 ответа

Я нашел решение. Вы указываете Систему. Безопасность. Политика. Доказательство Вас выполняющий блок (или тот, который имеет достаточные права) к LocalReport для использования во время выполнения.

reportViewer.LocalReport.ExecuteReportInCurrentAppDomain(System.Reflection.Assembly.GetExecutingAssembly().Evidence);
4
ответ дан 8 December 2019 в 18:43
поделиться

На всякий случай кто-то натыкается на это как, я сделал при поиске этой Ошибки Разрешения. Я получил эту ошибку с помощью Приложения Windows Forms, потому что клиент связал ярлык на мое Приложение-Exe на его машине с "\COMPUTERNAME\C$\\Application.exe" вместо "C:\Application.exe." - Это вызвало отказ Системы. Безопасность. Разрешение из-за недоверяемого использования интранет.

См. http://www.duelec.de/blog/?p=236 для получения дополнительной информации.

1
ответ дан 8 December 2019 в 18:43
поделиться

Одна быстрая мысль, хотя это не ошибка, которую я видел, удостоверяется, что Ваш Утверждать, находится в том же методе как код, который устанавливает источник данных ресурсов:

System.Data.SqlClient.SqlClientPermission mPermission = new SqlClientPermission(System.Security.Permissions.PermissionState.Unrestricted);
try
{
    mPermission.Assert();
    //rest of your code
}
//Handle Exceptions

Разрешение Утверждает, долгое время не бродят вокруг, они могут быть проблемой безопасности, таким образом делая их почти возможный к коду, для которого нужны они, скорее всего, будет работать.

0
ответ дан 8 December 2019 в 18:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: