2015-09-22 4 views
0

Я делаю movieApp в UWP, и я хочу сохранить идентификатор из фильма, если пользователю нравится фильм. Я попытался с txt, но hase много проблем с ошибкой отказа доступа. Поэтому я решил использовать sqlite insteed.Вставить новую строку с SQLite PCL

Я использовал это, чтобы получить starded: https://code.msdn.microsoft.com/windowsapps/Implement-SQLite-Local-8b13a307#content

Я искал некоторое время теперь и всю информацию я найти работу с доцент SQLITE ПКЛЫ .. это выглядит как много от методов, что существует доцент Примеры, найти использование.

Так что, кажется, есть немного примеров там .. Mabey вы, ребята могли бы толкнуть меня в правильном направлении ..

Это мой код до сих пор для этого:

private void LikeIt() 
{ 
    var sqlpath = System.IO.Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "Filmdb.sqlite"); 

    using (SQLite.Net.SQLiteConnection conn = 
     new SQLite.Net.SQLiteConnection(new SQLite.Net.Platform.WinRT.SQLitePlatformWinRT(), sqlpath)) 
    { 
     if (File.Exists(sqlpath)) 
     { 
      AdMovieID(); 
     } 
     else 
     { 
      conn.CreateTable<MovieID>(); 
      AdMovieID(); 
     } 


    } 
} 
private void AdMovieID() 
{ 
    var sqlpath = System.IO.Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "Filmdb.sqlite"); 

    SQLite.Net.SQLiteConnection conn = new SQLite.Net.SQLiteConnection(new SQLite.Net.Platform.WinRT.SQLitePlatformWinRT(), sqlpath); 

    //This is where i have tried some of the things i have found 
    // like this: 
    //SQLite.Net.SQLiteCommand insertSQL = 
    //new SQLite.Net.SQLiteCommand("INSERT INTO MovieID(ID) VALUES(?), conn)<-- error: dosent work no constructor that takes arguments; 
    //insertSQL.Parameters.Add(MovieID.ID); 

    //Just to test if something is saved 
    var allaId = conn.Find<MovieID>(sqlpath).ID;//<-- just tried this and it dosent work either "Object reference not set to an instance of an object." 
    foreach (var id in allaId) 
    { 
     Test.Text = id.ToString(); 
    } 
} 

Класс, я использую с SQLite:

public class MovieID 
    { 
     public string ID { get; set; } 
    } 

ответ

1

Вы не вставляете новый элемент в любом месте своего кода из того, что я вижу.

Заканчивать этот простой пример кода:

using (var connection = new SQLiteConnection(path)) 
{ 
    connection.CreateTable<MovieID>(); 
    connection.Insert(new MovieID { ID = "someId" }); 
    var movies = connection.Table<MovieID>().ToList(); 
} 

Если вы проверяете movies в конце концов он должен иметь один элемент внутри, объект MovieId с «someId» ID.

+0

Спасибо, что так работает сейчас! Я пробовал много вещей, некоторые из них у меня есть commentOut в приведенном выше коде .. но, как я сказал, он никогда не работал. Как вы знаете конкретную команду для этого? Becuse i can not найду примеры, которые показывают это для Sqlite PCL .. – Newbie1337

Смежные вопросы