/ / Przekazywanie obiektów JavaScript za pomocą c # - c #, javascript, jquery, asp.net

Przekazywanie obiektów JavaScript za pomocą c # - c #, javascript, jquery, asp.net

Mam formularz na mojej stronie internetowej, który zbiera dane i posty za pomocą jquery do obsługi przy użyciu c #. Używam request.form do przechwytywania danych formularza.

Mój przyjaciel powiedział, aby utworzyć obiekt JavaScriptprzekazywać dane zamiast wielu zmiennych. Mój problem polega na tym, kiedy publikujesz obiekt z parami wartości, jak uzyskać c #, aby uzyskać wartości z obiektu, ponieważ nie mogę teraz używać request.form.

Odpowiedzi:

1 dla odpowiedzi № 1

Json.js ma Stringify (), który konwertuje twój obiekt js do Json String, więc w C # możesz deserializować ten ciąg z powrotem do obiektu


3 dla odpowiedzi № 2

Czy spojrzałeś na JSON.Net? To sprawia, że ​​JSON (de) serializacja jest całkiem łatwa


1 dla odpowiedzi nr 3

.NET ma wbudowany serializator JavaScript (tj. JSON). Jest w System.Web.Extensions.

 JavaScriptSerializer serializer = new JavaScriptSerializer();

// To serialize
Dictionary<string, object> test = new Dictionary<string, object>(){ { "a", 1 } };
string json = serializer.Serialize(test);

// To deserialize (convert back to a .NET object)
Dictionary<string, object> result = serializer.Deserialize<Dictionary<string, object>>(json);

0 dla odpowiedzi nr 4

Możesz użyć 1 ukrytego pola i umieścić w tym polu łańcuch wartości JSON / para, a następnie przeanalizować go po stronie serwera.


0 dla odpowiedzi № 5

Udało mi się naprawić ten problem. Podczas publikowania danych musiałem użyć Request zamiast Request.Form. Teraz wartości są przekazywane z powrotem. Przepraszam, jeśli nie dodałem żadnego kodu i myślę, że pytanie, które zadałem, było trochę niejednoznaczne.