1

DBにデータを保存し、DBからデータを取得するだけのアプリケーションを作成しています。データベースにSQLiteを使用しています。

MainWindows.xaml.cs ファイル

using System.Data.SQLite;

namespace SQLiteSample
 {
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
     public partial class MainWindow : Window
     {
         private SQLiteCommand sql_cmd;
        private DataSet DS = new DataSet();
        private DataTable DT = new DataTable();
        private SQLiteDataAdapter DB;
        string myConnectionString = "Data Source=C:\\Documents and Settings\\20024509\\My     Documents\\SQLite\\Enum.db";
        SQLiteConnection myConnection = new SQLiteConnection();

        public MainWindow()
        {
             InitializeComponent();

          }

        private void LoadData()
        {
            try
            {
                myConnection.ConnectionString = myConnectionString;
                myConnection.Open();
                sql_cmd = myConnection.CreateCommand();
                string CommandText = "select EmpID,EmpName from Employee_Info";
                DB = new SQLiteDataAdapter(CommandText, myConnection);
                DS.Reset();
                 DB.Fill(DS);
                DT = DS.Tables[0];
                // grid1.DataSource = DT;
                 myConnection.Close();
             }
             catch (Exception e)
             {
                 myConnection.Close();
             }
           }


         private void SaveData()
         {
             SQLiteConnection myConn = new SQLiteConnection(myConnectionString);
             string myInsertQuery = "INSERT INTO Employee_Info(EmpID,EmpName,EmpAge,EmpSalary) Values(503453535, 'DEVELOPMENT',32987654)";
             SQLiteCommand sqCommand = new SQLiteCommand(myInsertQuery);
              sqCommand.Connection = myConn;
              myConn.Open();
             try
             {
                 sqCommand.ExecuteNonQuery();
              }
              finally
             {
                  myConn.Close();
              }

             }

          private void  FromDB_Click(object sender, RoutedEventArgs e)
           {
             LoadData();
           }

           private void ToDB_Click(object sender, RoutedEventArgs e)
          {
              SaveData();
          }
          }
  }

「http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki」(Setups for 32-bit Windows (.NET Framework 4.0) ) から Binary for .net をダウンロードしてインストールしましたそれ。

次に、wpf アプリケーションに参照を追加しました。しかし、それでも例外が発生しています

"{"'The invocation of the constructor on type 'SQLiteSample.MainWindow' 
that matches the specified binding constraints threw an exception.' 
Line number '3' and line position '9'."}"
4

2 に答える 2

5

AnyCPU ではなく x86 としてプロジェクトをコンパイルしてください。SQLite のビット数の問題は非常に有名なため、初心者には C#-sqlite を使用することをお勧めします (純粋な C# で記述されているため、すべてのモードで問題なく動作します)。

http://code.google.com/p/csharp-sqlite/

于 2012-05-17T13:32:05.777 に答える
2

下のリンクを見てください。

http://web.archive.org/web/20100208133236/http://www.mikeduncan.com/sqlite-on-dotnet-in-3-mins/

データをwpfデータグリッドにバインドするには、使用してデータテーブルをデータビューに変換します

dt.DefaultView;

于 2012-05-17T12:05:26.590 に答える