2013-10-28 75 views
0

我想知道如何使用Linq将数据从数据库表导出到文本文件如何使用linq将数据从数据库导出到文本文件

数据库表名是Customer,列是CustomerIDCustomername

我使用StreamWriter,我想用数据库表Customer中的数据填充文本文件。

这工作 - DataGridView

private void bExportEKsystem_Click(object sender, EventArgs e) 
{ 
    TextWriter sw = new StreamWriter("Test.txt", true); 

    int rowcount = DataGridview1.Rows.Count; 
    for (int i = 0; i < rowcount - 1; i++) 
    { 
     sw.WriteLine(); 
    } 

    sw.Close();  
} 
+1

能否请您编辑您的问题,包括你自己编写的代码。 –

+0

你如何访问你的数据库? – germi

+0

我现在编辑过。我正在访问数据库通过LINQ/.dbml-class – rtjyimb

回答

0

这个出口可以做这样的事情:

IEnumerable<Customer> customers = from customer in db.Customer 
    select CustomerID, Customername; 

using(TextWriter sw = new StreamWriter("test.txt", true)) 
{ 
    foreach (var c in customers) 
    { 
     sw.WriteLine(c.ToString()); 
    } 
} 

如果你定义Customer.ToString打印出来的客户信息在您的首选格式...

0

试试这个:

 int rowcount = datagridview1.Rows.Count; 
     IEnumerable<string> output = datagridview1.Rows.Cast<DataGridViewRow>().Select(row => (string) row.Cells[0].Value + row.Cells[1].Value); 
     using(TextWriter sw = new StreamWriter("test.txt", true)) 
     { 
      foreach (string s in output) 
      { 
        sw.WriteLine(s); 
      }    
     } 

*编辑:这是更好地使用using语句的流

相关问题