我尝试使用Xamarin和SQLite保存表单。
我试图像这样创建本地数据库:
SQLiteConnection db;
public MoodDatabaseController()
{
db = DependencyService.Get<ISQLite>().GetConnection();
db.CreateTable<MoodEntry>();
}
MoodEntry
public class MoodEntry
{
[PrimaryKey, AutoIncrement]
public int MoodEntryID { get; set; }
[Indexed]
public DateTime EntryDate { get; set; }
...
的getConnection():
public SQLite_Android() { }
public SQLite.SQLiteConnection GetConnection()
{
var sqliteFileName = "myMood.db3";
string documentsPath = System.Environment.GetFolderPath(System.Environment
.SpecialFolder.Personal);
var path = Path.Combine(documentsPath, sqliteFileName);
var conn = new SQLite.SQLiteConnection(path);
return conn;
}
错误: &#34; SQLite.SQLiteException:重复的列名:MoodEntryID&#34;
如果我只定义一次它怎么能存在呢?
编辑:
https://github.com/lasseedsvik/myMood
编辑2:
我还添加了一个空的ctor以避免该错误
答案 0 :(得分:1)
由于我注意到我无法更新Xamarin软件包并获得奇怪的输出,因此我从头开始重新编写整个解决方案并更新了Xamarin软件包并为我解决了这个问题。