Вызов функции из cshtml в cshtml.cs с использованием моделей - PullRequest
0 голосов
/ 16 января 2019

Я новичок в ядре asp.net и Razor, я пытаюсь вызвать функцию со страницы cshtml до его внутренней страницы cs:

<button onclick="@{Model.GetUserInfo(1);};" type="submit">Search</button>

cshtsml.cs

public UserInfo GetUserInfo(int userId)
{
    using (var client = new HttpClient())
    {
        var response = client.GetAsync($"localhost:44322/api/User/user/{userId}{userId}");
        var body = response.Result.Content.ReadAsAsync<UserInfo>().Result;

        return body;
    }
}

Я хотел бы получить информацию из API и отобразить информацию, которую я получил.

С этим кодом, если я поставлю {} вокруг Model.GetUserInfo (1); кнопка не отображается, без {} она не компилируется.

Кто-нибудь из вас может мне помочь с этим? спасибо.

1 Ответ

0 голосов
/ 16 января 2019

Шаг 1 - Вы можете написать функцию javascript, которая будет отправлять запрос ajax вашему методу контроллера

Шаг 2 - Верните данные, которые вы хотите от этого метода

Предполагая, что ваш контроллер называется Home, вы можете сделать что-то вроде этого -

<button onclick="GetData()" type="submit">Search</button>

function GetData() {
    $.get("/Home/GetUserInfo", function (data) {
        // Here put what do you want from received data
    });
}
...