sqldatareader читает ноль

Я использую SQLDataReader чтобы получить строку данных из таблицы.

public SalesOrderItem getSalesOrderQuantity(Int32 so_no, Int32 so_item_no)
    {
        string commStr2 = "SELECT * FROM Sales_order_item WHERE so_no=@so_no AND so_item_no=@so_item_no)";
        SqlCommand dbComm = new SqlCommand(commStr2, dbConn);
        dbComm.Parameters.AddWithValue("@so_no", so_no);
        dbComm.Parameters.AddWithValue("@so_item_no", so_item_no);

        try
        {
            dbConn.Open();

            dbReader = dbComm.ExecuteReader();

            if(dbReader.Read())
            {                    
                soItemObj = new SalesOrderItem(Convert.ToInt32(dbReader["so_no"]), Convert.ToInt32(dbReader["so_item_no"]), dbReader["material"].ToString(), Convert.ToInt32(dbReader["quantity"]), Convert.ToDecimal(dbReader["price"]));
                return soItemObj;
            }
            else
            {
                soItemObj = null;
                return soItemObj;
            }
        }
        catch
        {
            return null;
        }
        finally
        {
            dbConn.Close();
        }
    }

If(dbReader.Read()) оператор внутри блока try не выполняется. Может кто-нибудь сказать мне, что не так с этим?

Благодарю.

0 ответов

Другие вопросы по тегам