c# - 如何在 .NET Webforms 中使用 Jquery AJAX 将数据发布到 MySQL

标签 c# jquery mysql asp.net ajax

我目前正在 VS2013 中使用 ASP.NET C# 开发我的网站。 我的网站上有一个可行的投票方法,即投票保存在数据库中,您可以投票赞成或反对。 问题是,您的投票结果不会显示,因为一切都发生在服务器端。 我找不到任何有关如何使用 JS/Ajax 将数据发布到 MySQL 数据库的信息。 任何人都可以指导我教程或帮助我吗?

HTML:

<asp:LinkButton ID="BtnUp" runat="server" CssClass="btn btn-default btn-xs" CommandArgument='<%# Eval("WebsiteID").ToString() %>' OnCommand="up_click"></asp:LinkButton>

此按钮调用的方法(C#):

public void click(int webID, int vote)
        {
            using (SqlConnection con = new SqlConnection(strCon))
            {
                using (SqlCommand cmd = con.CreateCommand())
                {
                    cmd.CommandText = "UPDATE [Website] SET [Rating]+=@vote WHERE [WebsiteID]=@webID";
                    cmd.Parameters.AddWithValue("@webID", webID);
                    cmd.Parameters.AddWithValue("@vote", vote);

                    con.Open();

                    cmd.ExecuteNonQuery();

                }
                con.Close();
            }
        }

        protected void up_click(object sender, CommandEventArgs e)
        {
            String webID = e.CommandArgument.ToString();
            int ID = Convert.ToInt32(webID);
            click(ID, 1);
        }

如您所见,信息已保存到数据库中,因此甚至 GET 命令也可以以某种方式解决我的问题。我对 Ajax 还很陌生,正在尝试学习,但我确实需要有关如何发布到数据库的帮助。我应该在“url:”中输入什么?我在“数据:”中输入什么?

例如:

$.ajax({
                url: 'savevote', //What url to use for mySQL database?
                data: { itemId: itemId, voteType: voteType }, //how do i post the data?
                type: 'POST',
                success: votePostSuccess,
                error: votePostError
            });

最佳答案

What url to use for mySQL database?

取决于你有什么,如果它只是网络表单,那么一个带有 aspx 的 url。如果您有网络服务就好了。

$.ajax({
   url: 'yourservice.asmx/Savevote',
   data: { itemId: itemId, voteType: voteType }, 
   type: 'POST',
   success: votePostSuccess,
   error: votePostError
});

how do i post the data?

您使用 jquery 从控件中获取值,没有什么不同

[WebMethod]
public string Savevote(string itemId, string voteType)
{
   //put ADO.net here
   return success ? votePostSuccess : votePostError;
}

关于c# - 如何在 .NET Webforms 中使用 Jquery AJAX 将数据发布到 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27370438/

相关文章:

javascript - jQuery 将行追加到表中

javascript - 为特定元素设置计时器

mysql - Nodejs 和 MySQL,如何在 MySQL INSERT 语句中使用 NodeJs 变量

php - PHP 的语言本地化

mysql - 有没有办法按出现频率对 mysql 行进行排序?

c# - 组合框 SelectedIndex MVVM WPF

c# - 在哪里可以找到 C# 语言规范?

javascript 多次点击 显示隐藏

c# - 为什么 List<Object> 的 find 和 findindex 痛苦缓慢?

c# - 遍历 2 个列表