gpt4 book ai didi

sqlite - CreateParam 没有实现

转载 作者:行者123 更新时间:2023-12-03 15:41:39 26 4
gpt4 key购买 nike

我正在尝试将 Sqllite 内存数据库与 ServiceStack 一起运行。

Visual Studio .net 4.6.1 中的控制台应用程序

(如果我在 LinqPad 中运行相同的代码,它工作正常)

平台目标:x64

安装包ServiceStack.OrmLite.Sqlite64

static void Main(string[] args)
{
OrmLiteConfig.DialectProvider = SqliteDialect.Provider;

using (IDbConnection db = ":memory:".OpenDbConnection())
{

}
}

然后运行这个应用程序,我得到这个错误:

An unhandled exception of type 'System.TypeLoadException' occurred in
ConsoleApplication1.exe

Additional information: Method 'CreateParam' in type
'ServiceStack.OrmLite.Sqlite.SqliteOrmLiteDialectProvider'
from assembly
'ServiceStack.OrmLite.SqliteNET,
Version=4.0.42.0,
Culture=neutral,
PublicKeyToken=null' does not have an implementation.

package.json:

<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="ServiceStack.Common" version="4.5.4" targetFramework="net461" />
<package id="ServiceStack.Interfaces" version="4.5.4" targetFramework="net461" />
<package id="ServiceStack.OrmLite" version="4.5.4" targetFramework="net461" />
<package id="ServiceStack.OrmLite.Sqlite64" version="4.0.42" targetFramework="net461" />
<package id="ServiceStack.Text" version="4.5.4" targetFramework="net461" />
</packages>

最佳答案

在所有版本的 ServiceStack 中,您需要为所有 ServiceStack 包引用相同的版本。您的 packages.json 显示它引用了已弃用的旧版 v4.0.42 ServiceStack.OrmLite.Sqlite64 NuGet 包。

在包含 32 位和64 位 native .dll。

PM> Install-Package ServiceStack.OrmLite.Sqlite.Windows

您还可以使用 ServiceStack.OrmLite.Sqlite.Mono Sqlite NuGet 程序包,它在 Linux 和 Windows 上都可以运行,并引用 native sqlite3.dll

关于sqlite - CreateParam 没有实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40610861/

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