Вызовите хранимую процедуру с ajax - PullRequest
0 голосов
/ 10 марта 2020

Мне нужно использовать этот 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");
                    }
                });
            });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...