Проблемы с SqlDataAdapter - PullRequest
       1

Проблемы с SqlDataAdapter

1 голос
/ 25 сентября 2010

Необходимо выполнить несколько запросов, которые возвращают объект DataTable.Чтобы ускорить разработку, я создал частный метод, который должен возвращать набор данных, принимая строку запроса в качестве аргумента.

метод следующий:

private DataTable getDataTable(string query)
    {
        DataTable dt = new DataTable();
        SqlDataAdapter DA = new SqlDataAdapter(query, conn);
        try
        {
            iStatusIndicator.SetBusy(true);
            iStatusIndicator.SetStatus("executing query" + query);
            DA.Fill(dt);
        }
        catch (Exception ex)
        {
            ...
        }
        iStatusIndicator.SetBusy(false);
        iStatusIndicator.SetStatus("");
        return dt;
    }

процедура нене генерировать исключение, но DataTable dt всегда имеет значение null.Я попытался запустить строку запроса непосредственно в командной строке sql, и она возвращает данные, как и ожидалось, поэтому я не знаю, в чем может быть проблема.

Я был бы очень благодарен, если бы кто-то из вас объяснил причину,предложил исправление или лучший способ возврата таблиц данных путем получения строк запроса.

Спасибо

Ответы [ 2 ]

0 голосов
/ 25 сентября 2010

Что у тебя в улове?Случайно ли есть что-то, что делает возврат или выход sub?Кажется, это единственный способ увидеть, что эта функция возвращает NOthing (т. Е. Ваша функция никогда не достигает строки «return dt;»

0 голосов
/ 25 сентября 2010
private static DataSet SelectRows(DataSet dataset,
    string connectionString,string queryString) 
{
    using (SqlConnection connection = 
        new SqlConnection(connectionString))
    {
        SqlDataAdapter adapter = new SqlDataAdapter();
        adapter.SelectCommand = new SqlCommand(
            queryString, connection);
        adapter.Fill(dataset);
        return dataset;
    }
}
...