Как я могу получить альтернативные данные на четной / нечетной основе внутри метода action, используя c # MVC?

#c# #asp.net #model-view-controller

#c# #asp.net #модель-представление-контроллер

Вопрос:

Я хочу, чтобы альтернативные данные сохранялись в базе данных, так как у меня есть динамическое добавление полей, выполняемое с помощью тега ввода html. Ниже приведен мой код в контроллере, я получаю данные в параметре списка в виде массива. кто-нибудь может мне помочь, какую логику я должен указать?

     [HttpPost]
    public JsonResult Create(DTab[] list)
    {

        foreach (DTab d in list)
        {

            //DTab[] dTabs = new DTab[];
            DTabViewModel dTabViewModel = new DTabViewModel();
            dTabViewModel.Name = d.Name;
            dTabViewModel.Email = d.Email;
            dTabViewModel.Number = d.Number;
            db.DTabs.Add(d);
            db.SaveChanges();


        }
        return Json(list, JsonRequestBehavior.AllowGet);
    }
 

Ответ №1:

Пожалуйста, попробуйте использовать приведенный ниже код

     [HttpPost]
    public JsonResult Create(DTab[] list)
    {
        int a = 1; //set value as 1 and then increment 
        foreach (DTab d in list)
        {
           
            //DTab[] dTabs = new DTab[];
            DTabViewModel dTabViewModel = new DTabViewModel();                      
            dTabViewModel.Name = d.Name;
            dTabViewModel.Email = d.Email;
            dTabViewModel.Number = d.Number;
            //n(n 1)
            if(a%2 == 0)  // for even number set this condition
            {
                db.DTabs.Add(d);
                db.SaveChanges();
            }
            a  ; 
        
        }
        return Json(list, JsonRequestBehavior.AllowGet);
    }
 

if(a%2 == 0) означает, что цикл имеет значение true (i.e. should run the code inside it)
когда значение n является числом, которое при делении на 2 не имеет остатка, то есть любого четного числа.

То же if(a%2 == 1) самое означает любое нечетное число