Skip to main content
 首页 » 编程设计

c#之对电子邮件的 HTML 表的 SQL 查询

2024年02月23日32jpfss

我一直在使用一些与以下非常相似的代码来填充 gridview 控件:

using(SqlDataAdapter sqlDataAdapter =  
    new SqlDataAdapter("SELECT * FROM Table1", 
        "Server=.\\SQLEXPRESS; Integrated Security=SSPI; Database=SampleDb")) 
{ 
    using (DataTable dataTable = new DataTable()) 
    { 
        sqlDataAdapter.Fill(dataTable); 
        this.dataGridView1.DataSource = dataTable; 
    } 
} 

我现在想采用该 GridView 并将结果通过电子邮件发送到 html 表格中。我相信我可以通过使用 gridview 作为中间人来解决这个问题(将结果添加到 gridview 然后逐个单元格地绘制 html 表)但是我想知道是否有办法获取 SQL 查询的结果并将其绘制成 html准备好发送电子邮件了吗?

总结:我怎样才能查询数据库并以我可以用它们绘制 HTML 表格的方式返回结果?

请您参考如下方法:

没有人回答,所以我试一试。

DataTable 似乎有一个 Rows属性是数据表中所有行的集合。您需要做的就是遍历行并打印 html <tr>标签。然后可以使用 <td> 为每一列使用内部循环。标签。我对 C# 的经验很少,但它应该看起来像这样:

        emit("<table>\n"); 
        foreach(DataRow row in dataTable.Rows) 
        { 
            emit("<tr>"); 
            foreach(DataColumn column in dataTable.Columns) 
            { 
                emit("<td>" + row[column] + "</td>"); 
            } 
            emit("</tr>\n"); // add a newline for readability 
        } 
        emit("</table>\n"); 

如果您愿意,emit() 函数可以只连接一个字符串,然后您可以以该字符串作为正文作为 html 格式发送电子邮件。