передача значения из .net webservice в jquery - PullRequest
0 голосов
/ 05 марта 2012

Когда я передаю целочисленное значение из .net webservice в jquery, оно возвращается как логическое значение.

Мой веб-сервис:

     <WebMethod()> _
Public Shared Function returnRowId(ByVal User As String, ByVal ProgramName As String, Lesson As String) As Boolean
    Dim RowId As Integer
    Try
        Dim ds As New progressTableAdapters.Progress_LessonsTableAdapter
        RowId = ds.InsertFirstEntry(Lesson, Now, User, "", ProgramName)
    Catch ex As Exception
        RowId = 0
    End Try
    Return RowId
End Function

Вот код sql, который возвращает rowid"

    INSERT INTO Progress_Lessons
                  ( Lesson, Start_Time, User_Name, IPAddress, Programs)
    VALUES     (@lesson,@start,@user,@IP,@Programs);
    SELECT     SCOPE_IDENTITY()

Вот мой код ajax, вызывающий веб-сервис и фиксирующий идентификатор строки:

     function returnRowId() {
    var dataString = {
        User: $('#lblUser').val(),
        ProgramName: 'Conditional Statements',
        Lesson: $('#lblLesson').val()
    };
    var options = {
        type: "POST",
        url: 'cs.aspx/returnRowId',
        data: JSON.stringify(dataString),
        contentType: 'application/json; charset=utf-8',
        dataType: 'JSON',
        success: function (msg) {
            $('#rowId').val(msg.d);
        },
        error: function (request, status, error) {
                          alert(request.responseText);
                           alert(status.toString);
        }
    };
    $.ajax(options);
}

Когда я отлаживаю, значение Return в веб-методе является допустимым номером строки. Но отладказначение в коде jquery показывает msg.d = true. Не могу понять, почему значение строки преобразуется в логическое значение.

Любой совет приветствуется.

1 Ответ

0 голосов
/ 05 марта 2012

returnRowId объявлен как as Boolean, поэтому RowId преобразуется перед записью в ответ.

...