需要检查 TextBox 中的值是否已经在数据库中,以及是否不再将其保存在数据库中。这是文本框代码: <tr> <td> <asp:Label ID="lblProductConstruction" runat="server" Text="Product Construction:" Font-Names="Open Sans"></asp:Label></td> <td> <asp:TextBox ID="txtProductConstruction" runat="server" Font-Names="Merriweather" margin-Left="100px" ></asp:TextBox><br /> </td> </tr> <tr>保存按钮:<input type="button" class="button" id="myButton" value="Save"/>单击按钮时的 Ajax: $(function () { $('#myButton').on('click', function () { var lvl = $('#MainContent_txtProductConstruction').val() $.ajax({ type: "POST", url: "NewProductConstruction.aspx/GetCollection", data: JSON.stringify({'lvl': lvl }), contentType: "application/json; charset=utf-8", dataType: "json", success: function (response) { alert("Saved successfully."); console.log(response); location.reload(true); }, error: function (response) { alert("Not Saved!"); console.log(response); location.reload(true); } }); }); });第一个过程是尝试在数据库中查找值的选择。如果此选择找到某些内容,则 Count 必须大于 0,这应该关闭连接。如果 select 没有返回任何东西,那么这个新值必须插入到数据库中。我已经执行并测试了这些存储过程,它们工作正常。问题出在 C# 中,我想我在这里做错了,这不能正常工作。有人可以帮我处理 c# 部分吗?顺便说一句:Ajax 工作正常,WebMethod 正确获取值
2 回答
呼如林
TA贡献1798条经验 获得超3个赞
这行代码可能有问题
cmdCount.ExecuteNonQuery();
int count = (int)cmdCount.ExecuteScalar();
按照这个它命令两次一次executenonquery然后executescalar,
根据您的要求,应该只有一个调用ExecuteScalar,所以注释掉ExecuteNonQuery
//cmdCount.ExecuteNonQuery(); comment not needed
int count = (int)cmdCount.ExecuteScalar();
- 2 回答
- 0 关注
- 178 浏览
添加回答
举报
0/150
提交
取消