На экземпляре Amazon Windows EC2 я создал простое приложение Windows Forms в VS2017 Express, которое просто регистрируется в C: \ Data \ Databases \ File.txt и открывает базу данных sqlite C: \ Data \ Databases \ Database.БД с использованием Entity Framework.
Это прекрасно работает на моем локальном компьютере и других компьютерах, когда я его устанавливаю.
После того, как я установил его на EC2, он не выглядитsqlite работает нормально.Текстовый журнал записывается, и при выполнении FileExists база данных обнаруживается.
Однако, как только он достигает «использования»
public class databaseDB : DbContext
{
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlite(@"Filename=C:\Data\Databases\Database.db");
}
}
try
{
using (databaseDB db = new databaseDB())
{
StaticFunctions.WriteToLog("Selecting...");
}
}
catch (Exception ex)
{
StaticFunctions.WriteToLog("Error!");
StaticFunctions.WriteToLog(ex.InnerException.ToString());
}
, записывается следующий журнал ошибок:
System.IO.FileNotFoundException: не удалось загрузить файл или сборку 'System.ValueTuple, версия = 4.0.2.0, культура = нейтральная, PublicKeyToken = cc7b13ffcd2ddd51' или одна из ее зависимостей.Система не может найти указанный файл.Имя файла: 'System.ValueTuple, версия = 4.0.2.0, культура = нейтральная, PublicKeyToken = cc7b13ffcd2ddd51' ---> System.IO.FileNotFoundException: не удалось загрузить файл или сборку 'System.ValueTuple, версия = 4.0.0.0, культура= нейтральный, PublicKeyToken = cc7b13ffcd2ddd51 'или одна из его зависимостей.Система не может найти указанный файл.Имя файла: 'System.ValueTuple, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = cc7b13ffcd2ddd51'
, которую я обычно читал, это означает, что SQLite установлен неправильно.Я попытался зарегистрировать различные DLL-библиотеки sqlite самостоятельно, но продолжаю получать сообщение «Модуль загружен, но точка входа DllRegisterServer не найдена».ошибка.
Я также читал, что копирование библиотеки DLL sqlite в каталог приложения иногда работает, но, поскольку это приложение, Windows, кажется, скрывает установку где-то, к чему я не могу добраться.
Что я могу сделать, чтобы заставить это работать?
Спасибо!