У меня есть форма, которая включает в себя множество элементов <input>
и использует таблицы табулятора от 1 до n для ввода данных. Мне удалось успешно собрать данные из этих элементов в строку JSON. Сейчас я пытаюсь выполнить следующие два шага:
- Используя Ajax, отправьте объект JSON на мой веб-сервер; и
- В контроллере ASP. NET MVC загрузите десериализованные JSON данные в таблицу SQL Server 2016.
Моя клиентская сторона скрипт для POST объекта JSON выглядит следующим образом:
var myJson = "the data from the form elements is programmatically inserted into the JSON string";
// use parseJSON() to test the syntax
try {
var obj = jQuery.parseJSON(myJson);
}
catch(error) {
console.log(error);
}
$.ajax({
type: "POST",
url: "/Dailies/UploadJson/",
dataType: 'json',
data: JSON.stringify(myJson),
contentType: 'application/json',
crossDomain: true,
cache: false,
success: function(data) { console.log(data); }
});
Метод, вызываемый в моем ASP. NET MVC контроллере, выглядит следующим образом:
[HttpPost]
public IActionResult UploadJson(Object jsonFile)
{
// insert data into SQL Server table
}
Примечание. Я уже создал соответствующую модель предметной области в своем приложении ASP. NET MVC, а также добавил ссылку DbSet
на модель DbContext
. Я проверил свою способность вставлять строки в таблицу SQL Server, используя фиктивные данные.
Когда я помещаю точку останова внутри метода UploadJson()
, я обнаруживаю, что объект jsonFile имеет значение null.
Мой кван dry на данный момент двоякий:
- Кажется, я не могу получить данные JSON от клиента на веб-сервер; и
- Мне нужно лучше понять, как преобразовать данные JSON (однажды полученные) для загрузки в мою базу данных.
Любая помощь приветствуется.