出问题代码:
我用sa账户建立一个GetAllPages存储过程,但客户端程序调用时,老是报‘GetAllPages’对象名无效,请牛人解答。
我这里应该不涉及用户权限,和GetAllPages存储过程不存在的问题。因为我全都是以sa用户创建的
public bool insertUnit(string UnitName, string UnitPhone, string UnitAdress, string UnitNumber, string UnitDetails, int UserID, string UserName)
{
using (SqlConnection con = new SqlConnection(ConnectionHelper.ConnectionString))
{
con.Open();
string ProceName = "GetAllPages";
SqlCommand cmd = new SqlCommand(ProceName,con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@UnitName",SqlDbType.NVarChar,50));
cmd.Parameters["@UnitName"].Value = UnitName;
cmd.Parameters.Add(new SqlParameter("@UnitPhone", SqlDbType.NVarChar, 50));
cmd.Parameters["@UnitPhone"].Value = UnitPhone;
cmd.Parameters.Add(new SqlParameter("@UnitAdress", SqlDbType.NVarChar, 100));
cmd.Parameters["@UnitAdress"].Value = UnitAdress;
cmd.Parameters.Add(new SqlParameter("@UnitNumber", SqlDbType.NVarChar, 50));
cmd.Parameters["@UnitNumber"].Value = UnitNumber;
cmd.Parameters.Add(new SqlParameter("@UnitDetails", SqlDbType.Text));
cmd.Parameters["@UnitDetails"].Value = UnitDetails;
cmd.Parameters.Add(new SqlParameter("@UserID", SqlDbType.Int));
cmd.Parameters["@UserID"].Value = UserID;
cmd.Parameters.Add(new SqlParameter("@UserName", SqlDbType.NVarChar,50));
cmd.Parameters["@UserName"].Value = UserName;
cmd.Parameters.Add(new SqlParameter("@output", SqlDbType.Int));
cmd.Parameters["@output"].Direction = ParameterDirection.Output;
cmd.ExecuteNonQuery();
int Result = int.Parse(cmd.Parameters["@output"].Value.ToString());
if (Result > 0)
{
return true;
}
else
{
return false;
}
}
}
这里总是报GetAllPages不存在,在数据库里面把GetAllPages删掉再用别的名字代替,然后接着在前台改上对应的名称时,也是报错,调试发现它总是记忆着GetAllPages这个存储过程,不得已把方法名也改掉,最后还是没有成功,
今天发现问题了,其实也不是什么奇怪问题,我把存储过程名当成表名了,