【问题标题】:c# code returns System.Data.DataSet instead of Data itself?c# 代码返回 System.Data.DataSet 而不是 Data 本身?
【发布时间】:2018-12-10 18:29:22
【问题描述】:
public class Connect
{

    public DataSet Rezultate = new DataSet();
    public void Function(string query, string conexiune)
    {
        using (SqlConnection CONNECT = new SqlConnection(conexiune))
        {

            SqlDataAdapter adaptor = new SqlDataAdapter(query, CONNECT);
            SqlCommand command = new SqlCommand(query, CONNECT);
            try
            {

                command.Connection.Open();
                adaptor.Fill(Rezultate);


            }
            catch (Exception e)
            {
                Console.WriteLine("A aparut o eroare:" + e);
            }

        }
    }
}

class Mainclass
{
    private static void Main()
    {
        Connect a = new Connect();
        a.Function("select * from dbo.test", "Data Source=DESKTOP-S0FG0EC;Initial Catalog=AdventureWorks2016;Integrated Security=True");
        foreach (DataTable table in a.Rezultate.Tables)
        {
            foreach (DataRow row in table.Rows)
            {
                foreach (DataColumn column in table.Columns)
                {
                    Console.Write(a.Rezultate);
                    Console.ReadLine();
                }
            }
        }

    }

}

我想在 Visual Studio 控制台中显示查询的结果,但它返回 System.Data.DataSet。我尝试了许多修复,没有一个成功。我尝试实现 IEnumerable 接口也没有成功。

【问题讨论】:

标签: c#


【解决方案1】:

在你的 for 循环中,你只打印整个数据集。所以它应该打印数据集。

你需要替换以下 -

    Console.Write(a.Rezultate) 

    Console.WriteLine(row[column.ColumnName].ToString());  

【讨论】:

  • 我尝试了这个修复,它以某种方式工作。现在,我不知道为什么,但无论我输入什么查询,它总是显示“1”。
  • 当您在 DB 中运行时,此查询为您提供什么?select * from dbo.test
  • 更新:它有效,是否有可能在控制台上显示与在 sql 查询中完全相同的所有值?基本上将值显示为表:在控制台中包含行和列?
  • 在控制台中,否。但您可以为此创建 web/windows 应用程序。或者您需要手动尝试打印类似的内容。
猜你喜欢
  • 2021-05-12
  • 2017-12-21
  • 1970-01-01
  • 1970-01-01
  • 2013-10-31
  • 2012-03-09
  • 1970-01-01
  • 1970-01-01
  • 2023-03-21
相关资源
最近更新 更多