Использование Thread.Sleep () в c# Controller jquery ajax функция успеха не работает должным образом - PullRequest
0 голосов
/ 03 мая 2020

вот мой контроллер, мне нужно подождать 1 секунду между 2 запросами (правило сервера). загрузка в порядке. Обычно для каждого l oop цвет фона должен меняться зеленым по одному, но этот процесс меняет все строки одновременно, а не на каждом цикле. я положил console.log в функцию успеха и он работает правильно, но css команды на изменение нет. Я не могу найти почему. я пытаюсь удалить Thread.Sleep () и поместить settimeout в функцию jquery, но это же видео

        public async Task<string> BelgeAl(List<Beyanname> secililer, List<Islem> islemler, string token)
    {
        bool indir = true;
        bool yazdir = false;
        bool gonder = false;
        foreach (var islem in islemler)
        {
            if (islem.IslemTuru == "cbyazdir")
            {
                yazdir = true;
            }
            if (islem.IslemTuru == "cbgonder")
            {
                gonder = true;
            }
        }
        foreach (var GelenBeyan in secililer)
        {
            string YolAdi = YolHazirla(GelenBeyan);
            string DosyaAdi = DosyaAdiHazirla(GelenBeyan);

            await downloaditem(token, YolAdi + "/" + DosyaAdi, "Beyan", GelenBeyan.Id, "");
            Thread.Sleep(1000);
            await downloaditem(token, YolAdi + "/" + DosyaAdi, "Tahakkuk", GelenBeyan.Id, GelenBeyan.TahakkukId);
            Thread.Sleep(1000);
        }
        return "Downloaded";
    }

и вот мой jquery скрипт

        $.each($("tr[class='sec']"), function () {
        if ($(this).children('td:eq(1)').children("input[type='checkbox']").prop('checked')) {                
            durum = $(this);
            sayi++;
            var beyan = {};
            var secililer = [];
            beyan.Id = $(this).attr("id");
            beyan.TahakkukId = $(this).data("id");
            beyan.KisaKod = $(this).children('td:eq(2)').html();
            beyan.BeyannameTuru = $(this).children('td:eq(4)').html();
            beyan.Ay = $(this).children('td:eq(5)').html().substring(8, 10);
            beyan.Yil = $(this).children('td:eq(5)').html().substring(11, 16);
            secililer.push(beyan);
            $.ajax({
                url: '/Ebeyan/BelgeAl',
                type: "POST",
                dataType: "text",
                async: false,
                contentType: 'application/json; charset=utf-8',
                data: JSON.stringify({ secililer, islemler, token, }),
                success: function (data) {
                    console.log(sayi);
                    durum.css('background-color', 'green');
                    durum.children('td:eq(8)').html(data);
                    $("#pb").width(pbdurum + "%")
                }
            });

        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...