【发布时间】:2015-06-28 10:23:36
【问题描述】:
我试图从 C# 代码中访问存储过程,但总是得到结果 == -1。我不知道我哪里错了。我进行了很多搜索,但没有找到任何解决方案。请查看我的代码 sn-p 并指导我做错了什么。
提前致谢。
C#代码:
using (SqlConnection connection = new SqlConnection(getConnectionString()))
using (SqlCommand command = new SqlCommand())
{
Int32 rowsAffected;
command.CommandText = "SP_LOGIN_GETUSERBYNAME";
command.CommandType = CommandType.StoredProcedure;
// command.Parameters.Add(new SqlParameter("@Email", userObj.email));
// command.Parameters.Add("@Email", SqlDbType.VarChar).Value = userObj.email.Trim();
command.Parameters.AddWithValue("@Email", userObj.email.ToString());
command.Connection = connection;
connection.Open();
rowsAffected = command.ExecuteNonQuery();
connection.Close();
return rowsAffected;
}
连接字符串:
return "Data Source=MUNEEB-PC;Initial Catalog=HRPayRoll;User ID=sa; Password=sa";
存储过程代码:
CREATE PROCEDURE SP_LOGIN_GETUSERBYNAME
@Email varchar(50)
AS
SELECT *
FROM [User]
WHERE Email = @Email
GO
【问题讨论】:
-
避免使用
sp_前缀命名存储过程。该前缀用于 SQL Server 中包含的系统存储过程。 -
感谢@Dan 指导我 :)
标签: c# sql-server stored-procedures wcf-data-services