Я пробовал много возможных решений, и ни одно из них не сработало, у меня есть что-то вроде этого, но я не знаю, правильна ли структура json, или я не отправляю ее правильно на стороне сервера, я бы хотел чтобы знать, где источник проблемы. Это ошибка: Для типа 'System.String []' не определен конструктор без параметров.
Сторона клиента
function upload() {
var title = [];
var files = $('#myfile').prop("files");
var names = $.map(files, function (val) { return val.name; });
for (var i = 0; i < names.length; ++i) {
var item = { 'titulo' : names[i] };
title.push(item);
}
var myJSON = JSON.stringify({ titulos: title });
console.log(myJSON);
$.ajax({
async: true,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
type: "POST",
data: myJSON,
url: "../handlers/saveUpload.ashx",
success: function (msg) {
$("#title").val("Sucesso");
$("#msg").val("Upload efectuado com sucesso.");
$("#alerta").show();
$("#gif").hide();
}
});
}
На стороне сервера
try
{
date = DateTime.Now.ToShortDateString();
sessao = int.Parse(context.Session["userid"].ToString());
context.Response.ContentType = "application/json";
var data = context.Request;
var sr = new StreamReader(data.InputStream);
var stream = sr.ReadToEnd();
var javaScriptSerializer = new JavaScriptSerializer();
var arrayOfStrings = javaScriptSerializer.Deserialize<string[]>(stream);
foreach (var item in arrayOfStrings)
{
context.Response.Write(item.ToString());
}
}
catch (Exception msg) { context.Response.Write(msg.Message); }