本文介绍了为什么不是所有的代码路径都返回一个值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

为什么我会得到不是所有的代码路径都为下面的代码返回值以及如何解决?

Why am I getting not all code paths return a value for the below code and how to fix it?

private DateTime get_business_date()
{
    try
    {
        sql_connection = new SqlConnection(my_connection);
        sql_connection.Open();

        sql_command = new SqlCommand("sp_get_business_date", sql_connection);
        sql_command.CommandType = CommandType.StoredProcedure;
        sql_reader = sql_command.ExecuteReader();

        if (sql_reader.Read())
        {
            if (sql_reader.HasRows)
            {
                business_date = Convert.ToDateTime(sql_reader["category_name"];
            }
        }

        return business_date;
    }
    catch (Exception exp)
    {
        XtraMessageBox.Show(String.Format("Error reading business date!!{0}{1}", Environment.NewLine, exp.Message), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
    }
    finally
    {
        if (sql_reader != null) { sql_reader.Close(); sql_reader.Dispose(); }
        if (sql_connection != null) { if (sql_connection.State == ConnectionState.Open) { sql_connection.Close(); sql_connection.Dispose(); } }
    }
}

谢谢

Jassim

推荐答案

另一种解决方案:在消息框后添加"throw;" .


这篇关于为什么不是所有的代码路径都返回一个值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-24 20:39