Как передать данные с клиента на сервер в Blazor-приложении - PullRequest
1 голос
/ 25 сентября 2019

Мне нужно передать данные со стороны клиента на сервер в приложении, размещенном в Blazor, но я не могу этого достичь.

<button @onclick="PassData">Click me to send the data</button>

private async void PassData()
    {

        await Http.SendJsonAsync(HttpMethod.Post, "/api/Controller/Method", JsonObject);
    }

Этот метод не работает в моем контроллере на сервере.Не могли бы вы помочь, что я делаю не так.

1 Ответ

0 голосов
/ 25 сентября 2019

Сначала убедитесь, что вы сопоставили маршрут с контроллером

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapDefaultControllerRoute(); // this line

                endpoints.MapFallbackToClientSideBlazor<Client.Startup>("index.html");
            });

Создайте новый контроллер в папке контроллеров

    [ApiController]
    [Route("api/[controller]")]
    public class TestController : ControllerBase
    { 
         [HttpPost]
         public string Post([FromBody]Data data)
         {
            // Handle here
         }
    }

Назовите его

Http.PostJsonAsync<Data>("api/Test", data);

Надеюсьпомогает

...