Я пытаюсь скомпилировать следующий пример из здесь с помощью dmcs (и gmcs... я пробовал оба):
using System;
using System.Data;
using Mono.Data.Sqlite;
public class Example
{
static void Main()
{
string cs = "URI=file:test.db";
using( SqliteConnection con = new SqliteConnection(cs))
{
con.Open();
DataTable table = new DataTable("Friends2");
DataColumn column;
DataRow row;
column = new DataColumn();
column.DataType = System.Type.GetType("System.Int32");
column.ColumnName = "Id";
table.Columns.Add(column);
column = new DataColumn();
column.DataType = Type.GetType("System.String");
column.ColumnName = "Name";
table.Columns.Add(column);
row = table.NewRow();
row["Id"] = 1;
row["Name"] = "Jane";
table.Rows.Add(row);
row = table.NewRow();
row["Id"] = 2;
row["Name"] = "Lucy";
table.Rows.Add(row);
row = table.NewRow();
row["Id"] = 3;
row["Name"] = "Thomas";
table.Rows.Add(row);
string sql = "SELECT * FROM Friends2";
using (SqliteDataAdapter da = new SqliteDataAdapter(sql, con))
{
using (new SqliteCommandBuilder(da))
{
da.Fill(table);
da.Update(table);
}
}
con.Close();
}
}
}
Я использовал следующие аргументы CL, чтобы попытаться скомпилировать его:
dmcs sqlite8.cs -r:Mono.Data.Sqlite.dll, System.Data.dll
gmcs sqlite8.cs -r:Mono.Data.Sqlite.dll, System.Data.dll
И проявляются следующие ошибки:
sqlite8.cs(2,14): error CS0234: The type or namespace 'Data' does not exists in the namespace 'System'. Are you missing an assembly reference?
or
error CS2001: Source file 'System.Data.dll' could not be found
Compilation failed: 1 error(s), 0 warnings
Итак, Mono не может найти ссылку System.Data. Что мне делать, чтобы исправить это? Я привык делать C#, но компиляция CLI Mono для меня в новинку.