C# 在类中返回SqlCommand的结果

C# 在类中返回SqlCommand的结果,c#,sql,sql-server,winforms,C#,Sql,Sql Server,Winforms,由于我没有编写很长时间的程序,我想问您是否有方法调用名为klientClass 我在想它可能看起来像这样: private static void ReadFirma() { string queryString = "SELECT rocnik from FIRMA;"; using (SqlConnection connection = new SqlConnection(myConnection.DataSource.Conn

由于我没有编写很长时间的程序,我想问您是否有方法调用名为
klientClass

我在想它可能看起来像这样:

private static void ReadFirma()
    {
        string queryString =
            "SELECT rocnik from FIRMA;";
        using (SqlConnection connection = new SqlConnection(myConnection.DataSource.ConnectionString
                   ))
        {
            SqlCommand command = new SqlCommand(
                queryString, connection);
            connection.Open();

            int result= Convert.ToInt32(command.ExecuteScalar());
            try
            {

            }
            finally
            {

                reader.Close();
            }
        }
    }
因为我需要在此处将此结果插入我的报告参数:

 this.klientTableAdapter.Fill(this.prehled_zajezdu.HereReturnResult);

        this.reportViewer1.RefreshReport();

我很抱歉提出了一个低质量的问题,希望不要收到否决票。

这是在
Fill
方法中从数据库检索和使用值的方式(前提是Fill方法采用
int
类型的参数,并且
myConnection
字段可从静态方法获得)


您可以使用DataTable对象实现您的目标

private static DataTable ReadFirma()
{
    string queryString = "SELECT rocnik from FIRMA";
    using (var connection = 
        new SqlConnection(myConnection.DataSource.ConnectionString))
    using(var command = new SqlCommand(queryString, connection))
    {
        connection.Open();
        DataTable dt = new DataTable();
        SqlDataAdapter da = new SqlDataAdapter();
        da.SelectCommand = command;
        da.Fill(dt);
        return dt;
    }
}


void SomeMethod()
{
    this.klientTableAdapter.Fill(ReadFirma());
}

您可以使用DataAdapter使用dataset或datatable填充。我不理解这个问题。你能更清楚一点吗?是的,你可以运行这个函数,你可以调用它,什么对你不起作用?@NoIdeaForName嗯,我不知道如何准确调用SqlCommand的结果,你能帮我吗?提前感谢。您需要在哪里使用结果?你的问题没有描述你想要达到的目标。TableAdapter将DataTable或DataSet作为Fill方法的参数。为了获得标量,您不需要DataReader。ReadFirma方法可能会返回一些内容。请参见以下示例:谢谢,您完全理解我的意思,即使我描述得非常糟糕。请问如何将这个ReadFirma()调用到另一个类,其中是klint Tableadapter.Fill?提前谢谢。我知道我只将私有静态int设置为公共静态int。非常感谢
private static DataTable ReadFirma()
{
    string queryString = "SELECT rocnik from FIRMA";
    using (var connection = 
        new SqlConnection(myConnection.DataSource.ConnectionString))
    using(var command = new SqlCommand(queryString, connection))
    {
        connection.Open();
        DataTable dt = new DataTable();
        SqlDataAdapter da = new SqlDataAdapter();
        da.SelectCommand = command;
        da.Fill(dt);
        return dt;
    }
}


void SomeMethod()
{
    this.klientTableAdapter.Fill(ReadFirma());
}