интеграция веб-форм и веб-api

#asp.net-web-api #webforms

#asp.net-web-api #веб-формы

Вопрос:

Может ли кто-нибудь, пожалуйста, предоставить мне свои данные о том, как действовать дальше. приведенное ниже требование.

У меня есть веб-приложение, разработанное в VS professional 2015, и у меня есть отдельное приложение Web API. До сих пор существующее веб-приложение реализовано в 3-х уровневой архитектуре. Теперь мы хотели реализовать новые страницы с использованием вызовов Web API без 3-уровневой архитектуры.

Прежде всего, я хотел создать инфраструктуру / архитектуру в своем веб-приложении для вызова приложения web API. Чтобы все новые запросы страниц проходили через эту инфраструктуру / архитектуру и вызывали web API.

Пожалуйста, помогите мне с вашими ценными вкладами / предложениями.

Заранее благодарю вас.

Комментарии:

1. Используйте angular js или jquery для получения данных через ajax. Начальная страница сервера в виде статического HTML-файла.

Ответ №1:

поскольку мы используем API , нет необходимости создавать сложную инфраструктуру / архитектуру, если вы не хотите использовать ReactJs или AngularJs . Это даже не обязательно для них, но это позволит вам сохранить код в чистоте. вам просто нужно вызвать API using JavaScript, например, у вас есть метод контроллера API и вы хотите получить к нему доступ.

Простой способ создания продуктов

 #region Get Method
    // GET api/product

    [Queryable]

    [Route("Products")]
    [Route("All")]

    public HttpResponseMessage Get()
    {
        try
        {
            var products = _productServices.GetAllProducts();
            var productEntities = products as List<ProductEntity> ?? products.ToList();
            if (productEntities.Any())
            {
                return Request.CreateResponse(HttpStatusCode.OK, productEntities);
            }

            throw new ApiDataException(1000,"No Products Found",HttpStatusCode.NotFound);
        }
        catch (Exception)
        {
            throw;
        }
    }

    #endregion
  

просто вызовите уважаемый метод из ajax следующим образом

 $(document).ready(function () {
var a = "Test";
$.ajax({
    url: "v1/products/product/All",
    type: "GET",
    data: { a : a },
    success: function (response) {
        alert(response);
    },
    error: function (response) {
        alert(response);
    }
});});
  

Надеюсь, это поможет