gpt4 book ai didi

c# - 是否可以使用 SQLite.Net-PCL 创建内存数据库?

转载 作者:行者123 更新时间:2023-11-30 12:23:20 24 4
gpt4 key购买 nike

目前我正在使用 SQLite.Net-PCL 3.1.1 对 Xamarin MvvmCross 应用程序进行单元测试。单元测试项目是一个普通的.NET项目。

所以现在我正在模拟 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但是没有只接受一个字符串的构造函数。

最佳答案

按照@CL.给了我我改变了方法 GetPlattformDatabasePath:

public override string GetPlattformDatabasePath(string databaseName)
{
return ":memory:";
}

现在我没有在 bin 文件夹中看到要创建的东西,并且不需要在每次单元测试运行后删除现有数据,因此数据库必须在内存中。

关于c# - 是否可以使用 SQLite.Net-PCL 创建内存数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37408709/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com