views:

123

answers:

1

I downloaded System.Data.SQLite, and tried to compile the following sample code.

using System;
using System.Data;
using System.Data.Common;
using System.Data.SQLite;

namespace test
{
  class Program
  {
    static void Main(string[] args)
    {
      SQLiteConnection.CreateFile("/Users/smcho/Desktop/SQLite-1/example/mydatabasefile.db3");
    }
  }
}

I ran the following command

mcs db.cs -r:System.Data.dll -r:System.Data.SQLite.dll

But, I got the error messages as follows.

** (/opt/local/lib/mono/1.0/mcs.exe:43249): WARNING **: The class System.Data.Common.DbConnection could not be loaded, used in System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
db.cs(12,7): error CS0103: The name `SQLiteConnection' does not exist in the current context
Compilation failed: 1 error(s), 0 warnings

What might be wrong?

+2  A: 

Using the gmcs instead of mcs solved this issue.

gmcs db.cs -r:System.Data.dll,System.Data.SQLite.dll
prosseek
mcs is dead now (for .NET 1.x/Mono 1.x). gmcs should be used (for .NET 2.0+/Mono 2.x).
Lex Li