2017-10-17 65 views
-1

我必須做什麼:導出數據庫(.mdb/.ACCDB)與行選擇爲.csv

我需要加載數據庫,搜索條目和導出選擇列。

問題:

我有一個DataGrid(無DataGridView)的列表,然後選擇數據庫的條目,我不能得到任何的解決方案只與;作爲分隔符導出選定行。

代碼我如何加載並列出數據庫

using (OleDbConnection ODC = new OleDbConnection("Provider = Microsoft.Jet.OLEDB." + iOledDBVersion + "; Data Source = " + connectionString)) 
{ 
    OleDbCommand ODCmd = new OleDbCommand(insertSQL); 

    ODCmd.Connection = ODC; 
    ODC.Open(); 
    ODCmd.ExecuteNonQuery(); 

    //Data-Adapter erstellen 
    OleDbDataAdapter OleDbDataAdapter_Temp = new OleDbDataAdapter(insertSQL, ODC); 
    OleDbCommandBuilder OleDbCommandBuilder_Temp = new OleDbCommandBuilder(OleDbDataAdapter_Temp); 


    //Daten aus der Datenbank in Dataset speichern 
    OleDbDataAdapter_Temp.Fill(DataSet_DB, sTabelle); 

    // Schleife für jede Tabelle 
    for (int i = 0; i < DataSet_DB.Tables.Count; i++) 
    { 
     // Setzt die Spalten der DB in das DataGrid 
     DataGrid_Table.DataContext = DataSet_DB.Tables[i].DefaultView; 
    } 
} 

有出口這些行的任何propper方式?

+0

@demo都能跟得上它不是,我沒有一個DataGridView和需要導出只選定行......請閱讀我的問題bevor其標記爲重複 – Hille

+0

https://stackoverflow.com/questions/46784105/export-selection-from-datagrid-to-csv然後這一個 – demo

+0

@demo我想我創建一個新的問題,因爲舊的可以幫助人們與輸出問題,但這裏是其他人需要幫助的其他問題... – Hille

回答

1

有一個SelectedItems屬性,將返回DataGrid中的選定項。你的情況可以在每次這樣的項目爲DataRowView,如:

StringBuilder sb = new StringBuilder(); 
foreach(var selectedRow in DataGrid_Table.SelectedItems.OfType<DataRowView>()) 
{ 
    foreach(DataColumn column in selectedRow.DataView.Table.Columns) 
    { 
     sb.Append(selectedRow[column.ColumnName] + ";"); 
    } 
    sb.Append(Environment.NewLine); 
} 

string export = sb.ToString(); 
+0

你應該在博客上發佈你的解決方案,3小時後我沒有找到一個解決方案/這樣一個簡單的解決方案:) – Hille

+0

我需要你的幫助還有一次,我無法找到一種方法,讓我的.csv,t中的所有索引標題OO。 @ mm8 – Hille

+0

@Hille,用'column.ColumnName'創建一個Header行。將其添加到您的文件中。 –