C# Winform与SQLite并行运行

C# Winform与SQLite并行运行,c#,winforms,sqlite,C#,Winforms,Sqlite,最近,我将一些winform应用程序数据移动到SQLite。该应用程序在所有windows计算机上运行良好,但在mac上运行并行。我无法打开数据库文件错误。我可以创建没有任何问题的db文件。但一旦我检查表存在,我就会得到上面的错误 此文件创建步骤工作正常 SQLiteConnection.CreateFile(dbFile); 但新的连接步骤失败了 SQLiteConnection dbConnection = new SQLiteConnection("Data Source=mydb.d

最近,我将一些winform应用程序数据移动到SQLite。该应用程序在所有windows计算机上运行良好,但在mac上运行并行。我无法打开数据库文件错误。我可以创建没有任何问题的db文件。但一旦我检查表存在,我就会得到上面的错误

此文件创建步骤工作正常

SQLiteConnection.CreateFile(dbFile); 
但新的连接步骤失败了

SQLiteConnection dbConnection = new SQLiteConnection("Data Source=mydb.db3;Version=3;");
错误堆栈

System.Data.SQLite.SQLiteException:无法打开数据库文件 在System.Data.SQLite.SQLite3.Open(字符串strFilename、SQLiteConnectionFlags connectionFlags、SQLiteOpenFlagsEnum openFlags、Int32 maxPoolSize、Boolean usePool) 在System.Data.SQLite.SQLiteConnection.Open()处
在App.clsSQLiteDB.CheckTableExists(字符串表)

中,我设法解决了这个问题。必须在连接字符串中设置ParseViaFramework参数true

SQLiteConnection dbConnection = new SQLiteConnection("Data Source=mydb.db3;Version=3;", true);

您没有发布错误消息。您得到的异常是否有
内部异常
,如果有,您是否也可以发布异常类型和来自该异常的消息?你有没有检查过,如果你没有指定,这个类将使用什么默认目录?我没有访问mac的权限。我正在提供数据库的完整路径。与创建数据库文件路径字符串相同的路径字符串。这是mac使用的linux路径格式导致的吗?