我正在尝试在SQLite数据库中创建新的SQLite表。但是,每当我运行代码db.CreateTable<Set>();
时,都会得到System.NotSupportedException。我查看了这些其他帖子:
Xamarin.Forms Sqlite-net NotSupportedException on ManyToOne relationship "Don't know about <model>"
不是我的问题。我只有using SQLite;
(SQLite-net-pcl),删除后我在SQLiteConnection(dbPath)
周围遇到错误。
SQLite doesn't know about class 也不是问题。 Set是公共的,不包含任何静态元素。
错误消息:
System.NotSupportedException: Don't know about App1.Models.Set
用于创建数据库的代码:
public static string dbPath = Path.Combine(
Environment.GetFolderPath(Environment.SpecialFolder.Personal),
"database.db3");
var db = new SQLiteConnection(dbPath);
db.CreateTable<Set>();
db.CreateTable<Card>();
设置课程:
using SQLite;
namespace App1.Models
{
[Table("Set")]
public class Set
{
[MaxLength(64)]
public string name { get; set; }
[PrimaryKey]
public string code { get; set; }
public int amount { get; set; }
[MaxLength(24)]
public string plane { get; set; }
public Set(string _name, string _code, int _amount, string _plane)
{
name = _name;
code = _code;
amount = _amount;
plane = _plane;
}
}
}
答案 0 :(得分:1)
重命名表格。 “ SET”是SQLite中的关键字。
您可以在此处找到SQLite中的所有关键字。 https://www.sqlite.org/lang_keywords.html