ASP NET MVC Добавление элементов в список во View

108
11 августа 2021, 16:50

У меня есть модель:

public class ProjectModel
{
    public int Id { get; set; }
    public int Status { get; set; }
    public DateTime Add_Date { get; set; }
    public DateTime End_Date { get; set; }
    ...
    public string File { get; set; }
    public string Note { get; set; }
    public List<DeviceListModel> Devices { get; set; }
}

Есть форма Create, где заполняются поля проекта. В каждом проекте есть список устройств. Как добавлять во View новые устройства в список, чтоб при отправке формы полностью получить объект проекта со списком устройств?

Если добавлять через JS например, в таблицу, то данные попадают просто на страницу, но не в объект List<DeviceListModel> Devices

Сейчас я реализовал без post формы и отправляю данные через AJAX. С помощью примера Это работает хорошо. Но столкнулся с проблемой, что я не вижу полный путь до прикрепляемого файла, чтоб его сохранить на сервер. Вижу C:\fakepath\file.pdf Поэтому думаю вернуться к отправке post формы, в которой будет отправлять и файл.

Answer 1

Сделал так: В контроллере инициализировал список определенного размера, заранее больше, чем ожидается

view.Project.Devices = new List<DeviceListModel>(100);

При нажатии на кнопку + срабатывает скрипт, в котором

//Add Name cell.
var cell = $(row.insertCell(-1));
var deviceName = $("<input />");
deviceName.attr("type", "input");
deviceName.attr("readonly", "readonly");
deviceName.attr("name", "Project.Devices[" + countDevices + "].Name");
deviceName.attr("value", selectDevice.val());
cell.append(deviceName);
countDevices = countDevices + 1;

В результате формируется html

<input type="input" readonly="readonly" name="Project.Devices[0].Name" value="Dev2">
<input type="input" readonly="readonly" name="Project.Devices[1].Name" value="Dev1">

При отправке формы в объект попадают эти данные.

READ ALSO
Почему xdebug показывает один файл index?

Почему xdebug показывает один файл index?

Всем привет, второй день капаюсь с проблемой подскажите пожалуйста в чем может быть дело?

180
как найти точные слова из предложения в mysql

как найти точные слова из предложения в mysql

как найти точные слова из предложения в mysql, например, в таблице есть столбец где находится категории "music","movie" и в поиске пользователь введет...

168
Как выполнить проверку заполнено поле или нет?

Как выполнить проверку заполнено поле или нет?

У меня есть поле с картинкой (Input type file), если его заполнить (То-есть указать путь к картинке) то скрипт сработает, но если не заполнять то скрипт...

193