Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Melewati Tatasusunan JSON Kompleks dengan Cekap daripada jQuery ke Pengawal ASP.NET MVC?

Bagaimanakah Saya Boleh Melewati Tatasusunan JSON Kompleks dengan Cekap daripada jQuery ke Pengawal ASP.NET MVC?

DDD
Lepaskan: 2025-01-04 20:26:41
asal
218 orang telah melayarinya

How Can I Efficiently Pass Complex JSON Arrays from jQuery to ASP.NET MVC Controllers?

JSON dan jQuery: Melepasi Tatasusunan Kompleks kepada Pengawal ASP.NET MVC

Dalam senario di mana kita perlu menghantar pelbagai objek kompleks ke tindakan pengawal, adalah penting untuk mempertimbangkan keserasian antara kod sisi klien dan sisi pelayan. Mari kita mendalami pendekatan yang diterangkan oleh Steve Gentile untuk menyelesaikan cabaran ini.

Pemprosesan Sebelah Pelanggan

Kod jQuery:

function getplaceholders() {
    // Collect data into an array
    var results = new Array();
    ...
    var postData = { widgets: results };
    // Send data to the controller with JSON serialization
    $.ajax({
        url: '/portal/Designer.mvc/SaveOrUpdate',
        ...
        data: $.toJSON(widgets),
        ...
    });
}
Salin selepas log masuk

Di sini , data dikumpulkan ke dalam tatasusunan, dibalut dalam objek JSON, dan bersiri untuk dihantar ke pelayan.

Konfigurasi Tindakan Pengawal

Tindakan pengawal ASP.NET MVC:

[JsonFilter(Param = "widgets", JsonDataType = typeof(List<PageDesignWidget>))]
public JsonResult SaveOrUpdate(List<PageDesignWidget> widgets)
Salin selepas log masuk

Atribut [JsonFilter] menyesuaikan tindakan untuk menerima data JSON. Ia mentakrifkan nama parameter ("widget") dan menentukan jenis data JSON yang dijangkakan (List).

Atribut Penapis JSON Tersuai

public class JsonFilter : ActionFilterAttribute
{
    ...
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        if (filterContext.HttpContext.Request.ContentType.Contains("application/json"))
        {
            // Deserialize JSON data from request body
            string inputContent = ...;
            var result = JsonConvert.DeserializeObject(inputContent, JsonDataType);
            // Assign the deserialized object to the specified parameter
            filterContext.ActionParameters[Param] = result;
        }
    }
}
Salin selepas log masuk

Atribut Penapis JSON Tersuai JsonFilter memintas permintaan dengan jenis kandungan JSON, menyahsiri penggunaan data JSON Kelas JsonConvert Json.NET dan memberikan hasilnya kepada parameter tindakan yang sesuai.

Dengan menggunakan pendekatan ini, kami mewujudkan komunikasi antara data pihak klien dan tindakan pihak pelayan dengan berkesan, membenarkan pengawal memproses tatasusunan kompleks objek yang diterima dalam format JSON.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melewati Tatasusunan JSON Kompleks dengan Cekap daripada jQuery ke Pengawal ASP.NET MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan