2016-10-21 7 views
3

Согласно SqlServerTypes README мне нужно поставить эту строку:SqlServerTypes.Utilities недоступен из-за его уровня защиты

SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory);

перед выполнением пространственных операций для настольных приложений (шахта консоль приложение).

Однако он выдает ошибку на сборке:

'Utilities' is inaccessible due to its protection level

я пошел в папку пакетов и нашел Loader.cs и Utilities класса, на самом деле внутренний? Как это могло когда-либо работать? Я не мог найти кого-либо еще с этой проблемой, и они используют ее без проблем.

Utilities

Если я F12 в декомпилируемой Utilities он также отмечен как внутренний.

SqlServerTypes

Я использую версию 11.0.2.

+0

У меня точно такой же. Я использовал пакет nuget 'https: // www.nuget.org/packages/Microsoft.SqlServer.Types /' и имел то же самое. Вы нашли решение еще? Изменение внутреннего для публики не исправило это для меня. Кажется, что он рухнул на «Application_Start». –

+1

@JPHellemons Ну, я сделал взломать его. Проблема с пакетом все еще существует. Поскольку файлы DLL по-прежнему копируются в каталог выходных bin, а не в корневом директоре, я добавил сценарий после развертывания, чтобы скопировать DLL-скрипт из подкаталога в каталог корневого bin. Поскольку нет возможности различать потребности в 32 и 64 бит, вы можете копировать только один или другой, что может не сработать для вас. Я знаю, что всегда буду использовать 64-битную версию. –

+0

Я вижу такие вещи как доказательство, что никто в Microsoft не ест собаку, когда дело доходит до SqlClr или любого из периферийных инструментов Sql Server. – Pxtl

ответ

0

Установка пакета nuget на сайт MVC, а также уровень домена исправил эту проблему для меня. Для начала я только установил пакет в доменном слое, где я его фактически использую.

 Смежные вопросы

  • Нет связанных вопросов^_^