Есть несколько способов сделать это; это послужит примером.
Вы можете написать что-то вроде этого для своего кода jQuery:
urlToHandler = 'handler.ashx';
jsonData = '{ "dateStamp":"2010/01/01", "stringParam": "hello" }';
$.ajax({
url: urlToHandler,
data: jsonData,
dataType: 'json',
type: 'POST',
contentType: 'application/json',
success: function(data) {
setAutocompleteData(data.responseDateTime);
},
error: function(data, status, jqXHR) {
alert('There was an error.');
}
}); // end $.ajax
Далее вам нужно создать «универсальный обработчик» в вашем проекте ASP.net. В вашем универсальном обработчике используйте Request.Form
, чтобы прочитать значения, переданные как json. Код вашего универсального обработчика может выглядеть примерно так:
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class handler : IHttpHandler , System.Web.SessionState.IReadOnlySessionState
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "application/json";
DateTime dateStamp = DateTime.Parse((string)Request.Form["dateStamp"]);
string stringParam = (string)Request.Form["stringParam"];
// Your logic here
string json = "{ \"responseDateTime\": \"hello hello there!\" }";
context.Response.Write(json);
}
Посмотрите, как это работает. Это поможет вам начать!
Обновление: Я разместил этот код на бирже CodeReview: https://codereview.stackexchange.com/questions/3208/basic-simple-asp-net-jquery-json-example