如何将值从存储过程控制器输出到PostMan

时间:2019-01-03 19:59:54

标签: c# stored-procedures asp.net-core sql-server-2012

我编写了一个控制器类,该类在SQL Server中运行存储过程。我能够很好地运行控制器,并且与我需要访问的数据库没有连接问题。但是,当我使用POSTMAN从API获取输出时,出现错误“ 204 No Content”,并且没有任何数据显示(显然)。

我正在为此控制器使用C#和ASP.NET Core 2.0。我已经在SQL Server中测试了存储过程,并且工作正常。该存储过程应该接受一个输入值,并显示一个已由存储过程本身格式化的JSON字符串。

我的控制器类:

public async Task<IActionResult> ClassName([FromRoute] string input)
{
        string sqlcon = _iconfiguration.GetSection("ConnectionStrings").GetSection("Database").Value;

        using (SqlConnection con = new SqlConnection(sqlcon))
        {
            string sql = "StoredProcedure";

            using (SqlCommand com = new SqlCommand(sql, con))
            {
                SqlParameter outResult = new SqlParameter("@Output", SqlDbType.NVarChar, -1) { Direction = ParameterDirection.Output };
                com.CommandType = CommandType.StoredProcedure;

                com.Parameters.AddWithValue("@Input", input);
                com.Parameters.Add(outResult);

                var returnedName = outResult.Value;
                Console.WriteLine(returnedName);

                con.Open();

                com.ExecuteReader();
                con.Close();

                return Ok(returnedName);
            }
        }
    }

Postman应该基于输入参数(由我在Postman中提供)返回JSON输出字符串。但是,邮递员没有任何返回。有人知道可能是什么问题吗?

0 个答案:

没有答案