пытается отправить значение из внешнего интерфейса javascript в бэкэнд c# с помощью вызова ajax, но значение получает значение NULL в бэкэнде, я не знаю, где я допустил ошибку - PullRequest
0 голосов
/ 10 февраля 2020

Ожидается

Какое значение в текстовом поле будет отправлено в серверную часть? Я думаю, что проблема с вызовом, но я не знаю, где он

Javascript

function employeeLeavesList() {
                        var emp = {}
                        emp.EMPID = $("#employid").val();
                        alert(emp.EMPID);
                        $.ajax({
                            type:'POST',
                            url: 'service.asmx/employee_leaveslist',
                            data: JSON.stringify(emp),
                            contentType: "application/json; charset=utf-8",
                            dataType: "json",
                            success: function (data) {}
                        });

                    }

class.cs

public class emp
{
    public string EMPID { get; set; }
}

webmethod.asmx. CS

[WebMethod]
        public void employee_leaveslist()
        {
            emp emp = new emp();
            List<employee_leave_list> list = new List<employee_leave_list>();
            SqlConnection connection = new SqlConnection("Data Source = Champ; Initial Catalog = sample; Integrated Security = True");
            SqlCommand cmd = new SqlCommand("select emp_id,leaves_form, leaves_upto, leave_type, description, status, no_of_leaves from leaverequest where emp_id = '" + emp.EMPID + "' ", connection);
            cmd.CommandType = CommandType.Text;
            connection.Open();
            SqlDataReader idr = cmd.ExecuteReader();
            connection.Close();

        }

1 Ответ

0 голосов
/ 11 февраля 2020

Сначала измените параметр «data» вашего вызова $. ajax (), как показано ниже,

data: { empid : $('#employid').val() },

Затем измените первую строку webmethod employee_leaveslist (),

emp emp = new emp(){ EMPID  = (string)Request.Form["empid"] };
...