Я думаю, что их образец глючит. Если вы используете браузер сборки Visual Studio или браузер сборки MonoDevelop, или даже просто monop -r:Vici.CoolStorage.MT.dll Vici.CoolStorage.CSConfig
, вы увидите эти перегрузки для SetDB
:
public static void SetDB (CSDataProvider db);
public static void SetDB (CSDataProvider db, string contextName);
public static void SetDB (string dbName);
public static void SetDB (string dbName, Action creationDelegate);
public static void SetDB (string dbName, SqliteOption sqliteOption);
public static void SetDB (string dbName, SqliteOption sqliteOption, Action creationDelegate);
Ни один из них не принимает bool
в качестве второго параметра, поэтому я думаю, что их sample содержит ошибки.
Исправление заключается в том, чтобы сделать, как говорит компилятор, и использовать реально существующую перегрузку:
CSConfig.SetDB(dbName, () => {
CSDatabase.ExecuteNonQuery(
@"CREATE TABLE person
(PersonID INTEGER PRIMARY KEY AUTOINCREMENT,
Name TEXT(50) NOT NULL,
DateOfBirth TEXT(30) NULL)");
});