读书人

为何AjaxPro操作数据库时返回null

发布时间: 2011-12-26 23:09:58 作者: rapoo

为什么AjaxPro操作数据库时返回null
----.cs------
[AjaxPro.AjaxMethod]
public bool PublishTopic()
{
return CommonSql.ExecuteNonQuery( "P_System_Config_UpdateVisitor ");
}

----.js------
function LeaveWord_CallBack(ref) {
alert(ref.value);
//ifrLeaveWord.window.location.reload();
//$( "Form1 ").reset();
}

----ExecuteNonQuery----
/// <summary>
/// 执行不返回结果的 SQL 存储过程
/// </summary>
/// <param name= "sql "> SQL 存储过程 </param>
public bool ExecuteNonQuery(string sql)
{
try
{
SqlCommand command = Conn.CreateCommand();
command.CommandType = CommandType.StoredProcedure;
command.CommandText = sql;
Conn.Open();
command.ExecuteNonQuery();
return true;
}
catch (Exception ex)
{
string message = ex.Message;
return false;
}
finally
{
Conn.Close();
}
}

设置了断点做调试,发现根本就没有执行ExecuteNonQuery方法,直接返回了null,如果改成
public bool PublishTopic()
{
return true;


}
就可以返回true

第一次用AjaxPro操作数据库,郁闷死了

[解决办法]
CommonSql.ExecuteNonQuery( "P_System_Config_UpdateVisitor ");
是这样子的,你的ExecuteNonQuery是静态方法吗,如果不是静态方法,需要在PublishTopic方法里实例化CommonSql,不能在这个方法外面实例化,否则ajax找不到,或者你直接将ExecuteNonQuery修改为静态方法。

读书人网 >asp.net

热点推荐