ASP.NET MVC - выбор в раскрывающемся списке - частичные представления и привязка модели

Я новичок в ASP. NET MVC, и я пытаюсь найти лучший способ сделать это. Вероятно, это просто, но я просто хочу все делать правильно, поэтому я подумал, что спрошу.

Допустим, у меня есть такая модель:

Задача - Id, Description, AssignedStaffMember

StaffMember - Id, FirstName , LastName

и, на мой взгляд, я хочу создать новую задачу. Я делаю строго типизированное представление Razor и могу использовать EditorFor для создания текстовых полей для описания, но как насчет AssignedStaffMember?

Мне нужен раскрывающийся список всех текущих сотрудников и есть возможность выбрать один, а затем он будет отправлен в действие метод, который LastName

и, на мой взгляд, я хочу создать новую задачу. Я делаю строго типизированное представление Razor и могу использовать EditorFor для создания текстовых полей для описания, но как насчет AssignedStaffMember?

Мне нужен раскрывающийся список всех текущих сотрудников и есть возможность выбрать один, а затем он будет отправлен в действие метод, который LastName

и, на мой взгляд, я хочу создать новую задачу. Я делаю строго типизированное представление Razor и могу использовать EditorFor для создания текстовых полей для описания, но как насчет AssignedStaffMember?

Мне нужен раскрывающийся список всех текущих сотрудников и есть возможность выбрать один, а затем он будет отправлен в действие метод, который NewTask (описание строки, StaffMember назначенStaffMember) либо это, либо я мог бы иметь int для StaffId вместо объекта StaffMember и искать его в методе действия.

Как лучше всего это сделать? Мне нужно зайти в базу данных, чтобы получить список сотрудников, поэтому я подумал:

  1. Сделайте частичное представление для раскрывающегося списка сотрудников, которое будет использоваться несколько раз, и используйте @Html. Действие ("ListStaff", "Staff") для его вызова. Затем метод действия имеет

     public ActionResult ListStaff ()
    {
     IEnumerable  model = _serviceLayer.GetAllStaff ();
     return PartialView (модель);
    }
    

    Однако я не уверен, как это будет работать с привязкой модели, я понимаю, что у формы должно быть правильное имя для ее отправки, мне нужно передать имя в частичное представление, чтобы поместить на элементе, я полагаю?

  2. Вместо того, чтобы вызывать контроллер для получения персонала, создайте ViewModel, содержащий мою задачу и коллекцию IEnumerable possibleStaff. возможно отправить эту информацию для частичного просмотра.

  3. Помощник по HTML?

  4. Editor для чего можно было использовать?

какой из них (или их больше) будет лучше? и как мне сделать привязку модели?

5
задан DavidC 12 May 2014 в 17:06
поделиться