单声道的Sqlite,无法找到SQLiteConnection

时间:2009-05-05 18:58:02

标签: c# sqlite mono

我不确定如何纠正此错误。

The type or namespace name `SQLiteConnection' could not be found. Are you missing a using directive or an assembly reference?

我包含了引用Mono.Data Mono.Data.Sqlite Mono.Data.SqliteClient和一些不相关的引用。我正在使用

//using System.Data.SQLite; //<-- this line was all i needed in msvs
using Mono.Data.Sqlite;
using Mono.Data.SqliteClient;
using System;
using System.Data;
using Mono.Data.SqliteClient

3 个答案:

答案 0 :(得分:1)


您是否包含http://sqlite.phxsoftware.com/的参考文献(dll)?
如果没有,尝试这样做,它应该有效。

编辑:以上是如果你想使用System.Data.SQLite,但你也可以使用内置的Mono.Data.SqliteClient,如果你使用Mono可能会更好。在此处阅读更多相关信息http://www.mono-project.com/SQLite。在他们的代码示例中,他们使用SqliteConnection,您似乎使用SQLiteConnection,注意不同的情况。

答案 1 :(得分:0)

确保在编译时引用DLL:

gmcs -r:Mono.Data.SqliteClient.dll myapp.cs

答案 2 :(得分:0)

我遇到了同样的错误,部分原因是方法名在Windows和Mono中有不同的情况:

Windows: SQLiteConnection
Mono:    SqliteConnection

我得到了here的帮助,在需要它的文件中使用此代码:

#if __MonoCS__
    using Mono.Data.Sqlite;
    using SQLiteCommand =     Mono.Data.Sqlite.SqliteCommand;
    using SQLiteConnection =  Mono.Data.Sqlite.SqliteConnection;
    using SQLiteException =   Mono.Data.Sqlite.SqliteException;
    using SQLiteParameter =   Mono.Data.Sqlite.SqliteParameter;
    using SQLiteTransaction = Mono.Data.Sqlite.SqliteTransaction;
#else
    using System.Data.SQLite;
#endif

吉姆