Как вставить данные JSON AngularJS в SQL

0

Поэтому в настоящее время я работаю над приложением, которое использует WebAPI и AngularJS для поиска некоторых данных из таблицы SQL и отображения на веб-странице, чтобы пользователь мог выбрать несколько отдельных строк данных. Я вставляю выбранные строки в отдельный массив JSON (accessclients), который я хотел бы вставить в отдельную таблицу SQL. Какой лучший метод для меня взять мой массив данных JSON и вставить его в другую таблицу SQL. Я приложу код, который я использую для получения данных.

Controller.js

var app = angular.module('myApp', []);

app.controller("myController", function ($scope, $http) {

  function getCert(myid) {
    $http.get('api/Cert/Get/', { params: { id : myid } })
      .success(function (data) {
        $scope.selectedclients = data;
      })
  }

  $scope.searchClick = function() {
    getCert($scope.myid);
  }

  $scope.moveItem = function (item, from, to) {
    var idx = from.indexOf(item);
    if (idx != -1) {
      from.splice(idx, 1);
      to.push(item);
    }
  };

  $scope.availableclients = [];
});

HTML

<html data-ng-app="myApp">
  <body data-ng-controller ="myController">    

My_ID: <input type="text" ng-model="my_id" />
    <input type="submit" value="Search" ng-click="searchClick()" />

    <select size="10" multiple ng-model="selected" ng-options="i.unit_id for i in selectedclients" style="width: 400px"></select>
    <div class="btn-group">
      <button title="Remove From List" class="btn btn-default" ng-click="moveItem(available[0], availableclients,selectedclients)"><i class="glyphicon glyphicon-chevron-left"></i></button>
      <button title="Add To List" class="btn btn-default" ng-click="moveItem(selected[0], selectedclients,availableclients)"><i class="glyphicon glyphicon-chevron-right"></i></button>
    </div>
    <select size="10" multiple ng-model="available" ng-options="i.unit_id for i in availableclients" style="width: 400px"></select>
  </body>
</html>

Код, который у меня есть, работает отлично. Я просто в недоумении за то, как взять мой массив JSON для доступных клиентов и вставить его в таблицу SQL. Это, наверное, очень легко сделать, но все мои поиски заканчиваются на то, что я точно ищу. Любая помощь приветствуется. Благодарю!

EDIT 1: По рекомендации комментария я добавляю контроллер, который я использовал для получения веб-API. Еще раз спасибо за любой совет!

public class CertController : ApiController
{

    CertEntities objapi = new CertEntities();


    [HttpGet]
    public IEnumerable<AngularCoCSelect_Result> Get(int id)
    {

        return objapi.AngularCoCSelect(id).AsEnumerable();
    }

}

2 ответа

0

Это довольно широкий вопрос... также вы показываете код клиента и ничего из бэкэнд, который в конечном итоге сохранит данные (подозревая, что вы также добавляете тег asp.net)

Поэтому на основе этого вы можете использовать Entity Framework для хранения ваших данных в базе данных. Вы можете найти много статей в Интернете о реализации этого подхода.

  • 0
    Я использовал Entity Framework и Web API для получения моих данных. Я обновлю и добавлю это к моему оригинальному сообщению.
  • 0
    Итак, ваш вопрос, как это сделать из угловых, как отправить данные в веб-API?
Показать ещё 3 комментария
0

Это решение как направляющая линия

нужен back-end api, который принимает массив объекта (json) для ваших клиентов ASP.NET или PHP, затем

Вам нужно добавить функцию в "Угловая" в вашем контроллере для отправки данных клиента на сервер с помощью $http.put или $http.post

$scope.submitClientData = function(){
    $http.post('webapi/clients' , { clients:$scope.availableclients })
}

Вы можете вызвать функцию из кнопки отправки <button ng-click='submitClientData()'>Save</button>

  • 0
    Каковы преимущества использования пут против поста?
  • 1
    нет ничего, ставить и пост будет делать ту же работу, но , как конвенции RESTful API дизайна post для добавления нового ресурса и put для обновления существующего ресурса

Ещё вопросы

Сообщество Overcoder
Наверх
Меню