Получить количество полей формы, которые были заполнены? - PullRequest
0 голосов
/ 19 марта 2019

Контроллер:

    [HttpPost]
    [ValidateAntiForgeryToken]
    public ActionResult Create([Bind(Include = "Id,Facility,DateCreated,CreateUsername,DateLastModified,LastModifiedUsername,SupervisorComplete,DeptManagerComplete,SafetyManagerComplete,SupervisorDateCompleted,DeptManagerDateCompleted,SafetyManagerDateCompleted,Deleted,CorrectiveActionComplete,CorrectiveActionDateCompleted,HospitalName,EmailSent")] AccidentSupervisor accidentSupervisor)
    {
        if (ModelState.IsValid)
        {
            //Add AccidentSupervisor
            DB.AccidentSupervisors.Add(accidentSupervisor);
            DB.SaveChanges();
            return RedirectToAction("Index");
        }

        return View(accidentSupervisor);
    }

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

1 Ответ

0 голосов
/ 19 марта 2019

Попробуйте это:

int count = accidentSupervisor.GetType()
                 .GetProperties()
                 .Select(s => s.GetValue(accidentSupervisor, null))
                 .Count(c => c != null);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...