【发布时间】:2015-06-09 19:41:49
【问题描述】:
您好,我需要向 Jquery 返回一条消息。我的 webmethod 和 SQL 脚本做他们的事情,我现在不需要担心异常错误。
*重要的消息是 count > 0 ,因为这将通过 Jquery Alert 告诉用户电子邮件已经注册。
[WebMethod]
[ScriptMethod]
public static void SaveUser(Saved user)
{
string constr = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
try
{
using (SqlCommand cmd = new SqlCommand("select count(*)from TestTable2 where Email=@Email"))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@Email", user.Email);
cmd.Connection = con;
con.Open();
cmd.ExecuteNonQuery();
int count = Convert.ToInt32(cmd.ExecuteScalar());
con.Close();
if (count > 0)
{
// ...message email taken!
}
else
{
// now do Insert!
}
}
}
catch (Exception E)
{
StreamWriter sw = new StreamWriter(@"C:\inetpub\wwwroot\jQuery_AJAX_Database\error.txt", true);
sw.WriteLine(E.Message + user.Email);
sw.Close();
sw.Dispose();
throw new Exception(E.Message);
}
}
}
$.ajax({
type: "POST",
url: "my_dev3.aspx/SaveUser",
data: '{user: ' + JSON.stringify(user) + '}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function () {
alert('OK!');
},
error: function () {
alert('Error!')
}
});
return false;
【问题讨论】:
-
因此,将返回类型从 void 更改为您需要返回的任何数据的类型(字符串?新类?),然后返回。