将SQL Server过程中的值赋给c#中的变量?
这是我在Microsoft Visual Studio ASP.NET MVC4中使用C编写的代码# 错误消息: 无法隐式转换类型 “System.Data.SqlClient.SqlCommand”改为“int” 我漏了一步吗?比如我必须做一种将SQL Server过程中的值赋给c#中的变量?,c#,sql,sql-server,stored-procedures,type-conversion,C#,Sql,Sql Server,Stored Procedures,Type Conversion,这是我在Microsoft Visual Studio ASP.NET MVC4中使用C编写的代码# 错误消息: 无法隐式转换类型 “System.Data.SqlClient.SqlCommand”改为“int” 我漏了一步吗?比如我必须做一种ExecuteReader()类型的事情吗 我在ASP.NETMVC4中找不到关于使用SQL命令的好资源 我知道不要使用SQL注入的字符串连接b/c,所以我尝试使用SQL Server存储过程 程序如下: CREATE PROCEDURE getRows
ExecuteReader()
类型的事情吗
我在ASP.NETMVC4中找不到关于使用SQL命令的好资源
我知道不要使用SQL注入的字符串连接b/c,所以我尝试使用SQL Server存储过程
程序如下:
CREATE PROCEDURE getRows
AS
BEGIN
select COUNT(*)
from myTable
where Status = 1
END
注意:我已尝试使用(int)
和int.Parse
进行强制转换。我想这和阅读有关吧?或者让getRows过程有一个输出?它有一点更多:
信息。还有一点:
信息。ExecuteScalar()将在这种情况下帮助您。是的,这很有效!谢谢ExecuteScalar()将在这种情况下帮助您。是的,这很有效!非常感谢。
CREATE PROCEDURE getRows
AS
BEGIN
select COUNT(*)
from myTable
where Status = 1
END
SqlConnection sqlConnection1 = new SqlConnection("Your Connection String");
SqlCommand cmd = new SqlCommand();
SqlDataReader reader;
cmd.CommandText = "StoredProcedureName";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection = sqlConnection1;
sqlConnection1.Open();
int numRows = (int)cmd.ExecuteScalar();
sqlConnection1.Close();