Поиск причины System. AccessViolationException

Не имеет значения, что Вы используете в качестве первичного ключа, пока это УНИКАЛЬНО. Если Вы заботитесь о скорости, или хорошее проектирование баз данных используют интервал, если Вы не планируете тиражирование данных, то используйте GUID.

, Если это - база данных доступа или некоторое крошечное приложение затем, кто действительно заботится. Я думаю причина, почему большинство из нас, разработчики хлопают старый интервал или гуид в передней стороне, - то, потому что проекты имеют способ вырасти на нас, и Вы хотите оставить себя опцией вырасти.

30
задан Liam 20 September 2019 в 13:16
поделиться

1 ответ

stacktrace ничего не говорит Вам :-(. Можно ли обновить пакеты для наблюдения, если исключения не стало? Я видел Систему. AccessViolationException ни с Одним - Ориентированные на многопотоковое исполнение Com-объекты при доступе к Свойствам от workerthread. Таким образом да, я могу предположить, что исключение вызывается при помощи более ранней неориентированной на многопотоковое исполнение версии от некоторого API.

я справился с ситуацией путем добавления Атрибуты

[HandleProcessCorruptedStateExceptions]
[SecurityCritical]

к Методу, в котором я получаю доступ к этим конфликтующим Свойствам от COM-объекта. Также я должен был добавить

<legacyCorruptedStateExceptionsPolicy enabled="true" />

Установка на мой app.config и был, чем способный поймать эти Исключения и дескриптор мудро.

[еще 119] информация Поврежденные Исключения состояния Документы MS Путем обрабатывания Поврежденных Исключений состояния и не закрывают процесс, Вы оставляющий путь, где "CLR предлагает некоторые довольно сильные гарантии о безопасности правильности и памяти программы".

Кредиты к https://stackoverflow.com/a/4759831/1196586

0
ответ дан 28 November 2019 в 00:28
поделиться
Другие вопросы по тегам:

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