UWP Entity Framework Core SQLITE аварийно завершает работу в режиме выпуска

Я обновил свое универсальное приложение, используя предварительную версию entityframeworkcore.sqlite 2.0.

Все работает нормально в конфигурации отладки, но когда я переключаю конфигурацию выпуска в VS и собираю, выдается ошибка «Ссылка на объект внутренней ошибки компилятора не установлена ​​​​на объект».

Я думаю, что это связано с этим .net Native, но я не могу понять суть этого. Любые предложения о том, как дальше отлаживать ошибку?

Также, когда я попытался отправить приложение в магазин, я получил следующее в отчете о неудачной отправке:

С последующим

Тест конфигурации отладки
FAILED
Конфигурация отладки
Обнаружена ошибка: Тест конфигурации отладки обнаружил следующие ошибки:
Двоичный файл sqlite3.dll построен в режиме отладки.

Спасибо, я понизил версию до 1.1.2, и она скомпилирована в режиме выпуска. Тем не менее, по-прежнему не проходит сертификацию Windows.


person GrayFoxNZ    schedule 29.05.2017    source источник
comment
FAILED
Поддерживаемые API
Обнаружена ошибка: тест поддерживаемых API обнаружил следующие ошибки:
API __acrt_iob_func в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API __stdio_common_vfprintf в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API _cexit в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API _configure_narrow_argv в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API _crt_at_quick_exit в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API _crt_atexit в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API _except1 в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API _execute_onexit_table в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API _initialize_narrow_environment в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API _initialize_onexit_table в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API _initterm в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API _initterm_e в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API _localtime64_s в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API _register_onexit_function в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API _seh_filter_dll в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API _wassert в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
fflush API в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
Бесплатный API в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
Журнал API в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API malloc в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API qsort в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API rand_s в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API strcmp в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API strlen в ucrtbased.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API strncmp в ucrtbased.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API __std_type_info_destroy_list в vcruntime140d_app.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API _except_handler4_common в vcruntime140d_app.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API memcmp в vcruntime140d_app.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API memcpy в vcruntime140d_app.dll не поддерживается для этого типа приложений. sqlite3.dll вызывает этот API.
API memmove в vcruntime140d_app.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.
API memset в vcruntime140d_app.dll не поддерживается для этого типа приложения. sqlite3.dll вызывает этот API.   -  person Jay Zuo    schedule 30.05.2017


Ответы (1)


Это известная проблема компилятора .NET Native. См. github.com/aspnet/EntityFramework/issues/8461. На данный момент я предлагаю использовать последнюю стабильную версию (1.1.2) вместо предварительной версии.

person GrayFoxNZ    schedule 30.05.2017