C# 从SQL中的数据库查询中获取结果并在datagrid视图中显示

C# 从SQL中的数据库查询中获取结果并在datagrid视图中显示,c#,sql,database,C#,Sql,Database,我的问题是,我不知道如何用c代码链接sql数据库,但我试图做的是向我的sql数据库发送搜索查询,并将结果显示回数据网格视图。我的问题在于返回和显示数据。以下是我在搜索按钮单击事件方法中创建的搜索方法: // takes one of the parameters and searches the data base for all rows that match the parameter and argument private void SearchBTN_Click(object send

我的问题是,我不知道如何用c代码链接sql数据库,但我试图做的是向我的sql数据库发送搜索查询,并将结果显示回数据网格视图。我的问题在于返回和显示数据。以下是我在搜索按钮单击事件方法中创建的搜索方法:

// takes one of the parameters and searches the data base for all rows that match the parameter and argument
private void SearchBTN_Click(object sender, EventArgs e)
{
    switch(searchCB.SelectedIndex)
    {
        case 0:
            selectedItem = "HaulerName";
            break;
        case 1:
            selectedItem = "TicketNumber";
            break;
        case 2:
            selectedItem = "LeaseName";
            break;
        case 3:
            selectedItem = "TicketDate";
            break;
        case 4:
            selectedItem = "CustomerName";
            break;
        case 5: 
            selectedItem = "LeaseOperator";
            break;
        case 6:
            selectedItem = "ProductName";
            break;
    }
    if (selectedItem.Equals("TicketDate") == false)
    {
        query = "SELECT * FROM DisposalData.dbo.ThirdPartyDisposal WHERE " + selectedItem + " LIKE '" + searchTB.Text.ToString() + "%';";
        var connection = new SqlConnection(connectionString);

        connection.Open();
        SqlCommand command = new SqlCommand(query, connection);
        SqlDataReader reader = command.ExecuteReader();

    }


}
我运行了调试器,它运行得很好,执行得很好,我一辈子都搞不懂如何将结果放入数据网格视图表中。任何帮助和尽可能多的解释都会很好,谢谢

你应该仔细阅读。要使代码正常工作,请替换此

sqlDataReader reader = command.ExecuteReader();

如果使用webforms添加此行,请在winforms中忽略它

 dataGridView1.DataBind();

在做其他事情之前,您需要解决更大的问题—SQL注入漏洞。此外,您将走一条非常古老且有点传统的路线——看看.NET中可用的数据库框架的数量。即使是被实体框架取代的Linq2Sql,也可能是一个更好的选择。这个短语非常常见,注入和漏洞这两个词对任何开发人员或具有一般逻辑的人来说都会造成反射性的痛苦,因此它可以作为一个标志:快速的谷歌将产生关于这个主题的大量数据,甚至单独阅读维基百科页面也是一个不错的举措。我刚刚提供了激励。SQL注入是OWASP在web应用程序安全性中列出的第一项。
 dataGridView1.DataBind();