2017-03-13 8 views
-1

私はSQLite DBをUniversal Windows APPに持っていて、マルチタイプ(bool、int、Uint64)を持っています。 IDからテーブルのすべての値を返す必要があります。SQLiteの値を返す最も良い方法

// Id Module 
    [PrimaryKey] 
    public int id { set; get; } 
    // Fix comm state 
    public bool commState { set; get; } 
    // Fix home sensor state 
    public bool homeSensor { set; get; } 
    // Fix up sensor state 
    public bool upSensor { set; get; } 
    // Fix down sensor state 
    public bool downSensor { set; get; } 
    // Fix actual tier position 
    public int actualTier { set; get; } 
    // Fix actual step of encoder 
    public UInt64 encodPosition { set; get; } 

私はリストで返そうとしますが、私は別のタイプのものでは返せません。

SQLite DBからこの値を一緒に返す最良の方法はありますか?

ありがとうございました。

+0

はい、あなたはリストを作成することができる場合'var obj = new List (){}'としてコード内にデータ型を定義します。 – MethodMan

+1

それは仕事です。ありがとう。 –

答えて

0

MethodManが問題の解決に役立ちます。

私はオブジェクトを作成しました:

class objModel 
{ 
    // Id Module 
    public int id { set; get; } 
    // Fix comm state 
    public bool commState { set; get; } 
    // Fix home sensor state 
    public bool homeSensor { set; get; } 
    // Fix up sensor state 
    public bool upSensor { set; get; } 
    // Fix down sensor state 
    public bool downSensor { set; get; } 
    // Fix actual tier position 
    public int actualTier { set; get; } 
    // Fix actual step of encoder 
    public UInt64 encodPosition { set; get; } 
} 

は、次にオブジェクトのリストを使用します。

public List<objModel> getParameters() 
    { 
     var db = new SQLiteConnection(new SQLitePlatformWinRT(), pathDBLocal); 

     var sList = db.Table<ModuleDB>(); 

     List<objModel> mList = new List<objModel>(); 

     foreach (var item in sList) 
     { 
      mList.Add(item.objM);     
     } 
     return mList; 
    } 

おかげでみんな... :)

0

必要なオブジェクトを返すためにEntity Frameworkを使用できます。

:あなたはADO.NETを使用したい場合は、ここであなたは(Sqlite.Net使用して)データセットを返しますメソッドを持って

https://erazerbrecht.wordpress.com/2015/06/11/sqlite-entityframework-6-tutorial/

:これはすべての方法を通してあなたをリードするチュートリアルです

private static DataSet ExecuteDataset(string DBLocation, string query) 
    { 
     var conn = new SQLiteConnection("Data Source=" + DBLocation + ";Version=3;"); 
     DataSet ds; 
     try 
     { 
      conn.Open(); 
      ds = new DataSet(); 
      var da = new SQLiteDataAdapter(query, conn); 
      da.Fill(ds); 
     } 
     catch (Exception) 
     { 
      throw; 
     } 
     finally 
     { 
      conn.Close(); 
     } 
     return ds; 
    } 
+0

私はこれがUniversal Windows APP用であることを忘れてしまいます。 私はデータセットを使用できないと思います。私が間違っている場合は申し訳ありません... –

関連する問題