从asp.core 2.0中的ajax访问代码

时间:2017-11-21 10:36:07

标签: c# ajax asp.net-core-mvc

所以我需要在asp.net core 2.0 mvc中实现facebook身份验证,我已经这样做了。但后来我需要访问后面的代码来执行数据库操作。我之前在经典的asp.net中已经做过,但现在在核心我不太确定。我之前使用ajax函数实现了它,从函数后面调用web方法函数。这里,至少在mvc中,cs页面与cshtml页面是分开的。是否仍然可以这样做?

这是来自经典asp.net版本的代码:

// Client ajax function
function Ajax(expression1, expression2) {
        var request = { email: expression1, name: expression2}
        $.ajax({
            url: 'login.aspx/Login',
            method: 'post',
            contentType: 'application/json',
            data: JSON.stringify(request),
            dataType: 'json',
            success: function (resp) {
                window.location.href = resp.d;
            },
            error: function () {
            }
        })
    }

// Server side function that I needed to access

[WebMethod]
    public static string Login(string email, string name)
    {

        // Make required validations
        return whatever;
    }

所以现在我有相同的但是在asp.net core 2.0 mvc方式。

1 个答案:

答案 0 :(得分:0)

好的,我解决了。所以,我必须在网址中输入控制器的名称,在我的例子中是' Home',以及方法的名称。在这种情况下,它将是:' Home / Login'。在后面的代码中,您可以拥有任何功能,它将起作用。但是你必须将数据接收到一个对象和标签(?)[FromBody]才能工作。例如:

public string Login([FromBody]User user)
        {

        }

然而,如果有更好的方法,我会全神贯注。不管怎样,谢谢。