如何将.net应用程序的SQL Server数据库中的数据保存到客户机目录中
本文关键字:数据 保存 客户机 Server net 应用程序 SQL 数据库 | 更新日期: 2023-09-27 18:13:22
我使用控制台应用程序编写了以下c#代码,从数据库中获取数据并将其保存在.CSV
文件中。
我的问题是:这里我保存到一个EXCEL文件,它已经存在于我的本地机器上。但是我希望代码应该在一个客户机机器目录中创建一个文件并保存数据。如何相应地更改此代码?
我在asp.net应用程序中使用此代码用于BUTTON_Click EVENT。我需要在那个时间点添加任何名称空间吗?
class Program
{
static void Main(string[] args)
{
string strConn = "Data Source=ARYAANCLASS;Initial Catalog=Master;Integrated Security=True";
SqlConnection conn = new SqlConnection(strConn);
SqlDataAdapter da = new SqlDataAdapter("select * from QuickBook", conn);
DataSet ds = new DataSet();
da.Fill(ds, "QuickBooks");
DataTable dt = ds.Tables["QuickBooks"];
StreamWriter sw = new StreamWriter(@"d:'Rudresh'QuickBookData.csv", false);
int iColCount = dt.Columns.Count;
for (int i = 0; i < iColCount; i++)
{
sw.Write(dt.Columns[i]);
if (i < iColCount - 1)
{
sw.Write(",");
}
}
sw.Write(sw.NewLine);
foreach (DataRow dr in dt.Rows)
{
for (int i = 0; i < iColCount; i++)
{
if (!Convert.IsDBNull(dr[i]))
{
sw.Write(dr[i].ToString());
}
if (i < iColCount - 1)
{
sw.Write(",");
}
}
sw.Write(sw.NewLine);
}
sw.Close();
}
}
我想你不明白客户端/服务器端是什么意思。
你所写的程序是一个客户端程序,所以如果用户在他的计算机上打开可执行文件,它应该工作(或多或少有一些改进,如:测试是否存在写文件夹,否则创建它)。
他还必须能够连接到数据库,所以在sql连接周围的"try catch"块不是一个坏的计划。
如果你试图创建一个网页,这是一个完全不同的故事。不可能将文件"保存"到客户端位置。然后,您必须将其保存在服务器上的web用户可以访问的文件夹中,例如www/savedcsv文件夹。然后,当流结束时,将"web用户"重定向到文件夹www.mydomain.com/savedcsv/newfile.csv,他将能够下载它。