Мне нужно использовать этот SP в моем коде. Кто-нибудь может понять, почему мой AJAX -all возвращает 404? Параметр, в котором нуждается SP, - foretagkod = 3000, и он должен срабатывать. (Мне также нужно это значение транзида после запуска SP, но пусть это будет пока) Просто хочу, чтобы это как-то работало.
Хранимая процедура
ALTER
proc [dbo].[q_get_next_tranid] @foretagkod smallint, @tranid bigint output, @calltype varchar(10) = null
as
select @tranid = tranid + 1 from q_tranid where foretagkod = @foretagkod
if @tranid is null
begin
select @tranid = 1
insert q_tranid (foretagkod, tranid) values (@foretagkod, @tranid)
end
else
begin
update q_tranid set tranid = @tranid where foretagkod = @foretagkod
end
if @calltype='select'
begin
select @tranid
end
CS
public partial class get_next_tranid : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
[WebMethod]
public static int q_get_next_tranid(int foretagkod, int tranid)
{
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["Test_jvspkkEntities"].ConnectionString);
conn.Open();
SqlCommand cmd = new SqlCommand("q_get_next_tranid", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@foretagkod", foretagkod);
cmd.Connection = conn;
cmd.ExecuteNonQuery();
conn.Close();
return tranid;
}
}
Просмотр:
$('#btnPO').click(function () {
var foretagkod = 3000;
$.ajax({
type: 'POST',
contentType: 'application/json',
url: '/get_next_tranid.aspx/q_get_next_tranid',
data: '{foretagkod:' + foretagkod +'}',
dataType: "json",
async: false,
success: function (data) {
alert("Success");
},
error: function () {
alert("Error");
}
});
});