В настоящее время я работаю над модульными тестами для приложения Xamarin MvvmCross с использованием SQLite.Net-PCL 3.1.1. Проект модульного тестирования - это обычный проект .NET.Возможно ли создать базу данных In-memory с использованием SQLite.Net-PCL?
Так что теперь я насмешливый MvxSqliteConnectionFactoryBase
public class MockMvxSqliteConnectionFactoryBase : MvxSqliteConnectionFactoryBase
{
#region implemented abstract members of MvxSqliteConnectionFactoryBase
public override string GetPlattformDatabasePath(string databaseName)
{
return "Data Source=:memory:";
}
public override ISQLitePlatform GetCurrentPlatform()
{
return new SQLite.Net.Platform.Generic.SQLitePlatformGeneric();
}
public override ISQLitePlatform GetCurrentPlatform(string key)
{
return new SQLite.Net.Platform.Generic.SQLitePlatformGeneric();
}
#endregion
}
Но база данных не создается в памяти, а не в bin
папке проекта.
Я попытался инициализировать SQLiteConnection
следующим образом: example, но нет конструктора, который принимает только одну строку.
@ Арон на самом деле, он * может * работать с файлом резервной копии или без нее. Использование его в качестве памяти - очень распространенный сценарий. Вот о чем этот вопрос. –
Это совершенно правильный вопрос. Любые downvoters должны дать действительное объяснение –
@Aron https://www.sqlite.org/inmemorydb.html – stuartd