C#数据库选择

标签 c#

我有一个名为 transaktions 的表,我在其中插入了客户账单和客户编号。我的主键是一个具有身份说明的 int id。我的问题是如何选择包含特定 customer_nr 的所有行并返回所有结果?

现在我正在做:

public string getCustomerTransaktions(string CustNr)
{
    using (var cmd = new SqlCommand("select billing_name from [transaktions] where customer_nr = @customer_nr", Connect()))
    {
        cmd.Parameters.AddWithValue("@customer_nr", custNr);
        using (var er = cmd.ExecuteReader())
        {
            if (er.Read())
            {
                return (string)er["billing_name"];
            }
        }
    }
    return "UNKNOWN";
}

这只会打印与客户编号匹配的第一行,至少还剩下 20 行。有人有什么建议可以帮助我吗? 最好的问候

最佳答案

同意@Niklas 和@Skurmedel 的观点,您都需要使用循环来处理多条记录并将它们整理在一起,然后再将它们作为结果返回。

例如

public List<string> getCustomerTransaktions(string CustNr)
{
    List<string> names = new List<string>();

    using (var cmd = new SqlCommand("select billing_name from [transaktions] where customer_nr = @customer_nr", Connect()))
    {
        cmd.Parameters.AddWithValue("@customer_nr", custNr);
        using (var er = cmd.ExecuteReader())
        {
            while(er.Read())
            {
                names.Add((string)er["billing_name"]);
            }
        }
    }

    return names;
}

关于C#数据库选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5700848/

相关文章:

c# - 蓝牙和 C# PC -> 无需配对的手机连接

C# Linq 聚合中间值

c# - .NET 中如何实例化类和嵌套类?

c# - 使用 SQL Server 数据库中的数据在文本框中自动完成

c# - 方法后变量设置为空

c# - 如何在指定的随机间隔内生成敌人?

c# - 如何在 C# 中通过继承实现类组合

C# - 提取图像时解析ffmpeg标准输出

c# - 如何返回带有错误消息或异常的 NotFound() IHttpActionResult?

c# - 检查下拉列表是否已包含动态添加的项目