Member 12224368 Ответов: 2

Возможно ли иметь более 1 логики контроллера в одном представлении usinf mvc5, entity frame work


У меня есть две логики(в одном контроллере) для одного представления списка(индекса), логика 1. Поиск creteria в списке ActionResult. 2. установите флажки для всех строк, если пользователь хочет выбрать более одной строки для удаления в Delete ActionResult.
Но для меня любой из них работает, будь то поиск или удаление всей логики, потому что в представлении я использую
@использование (в формате HTML.Бигинформ("Список", "Образование", FormMethod.Почта))

Если я даю "список" в BeginForm, применяется только логика ActionResult List ().
Если я даю "удалить" в BeginForm только логику ActionResult Delete (), то это aaplying. но в то же время я не в состоянии применить эти две логики. Пожалуйста, веди меня. Есть ли какие-либо возможности дать две начальные формы, такие как
@использование (в формате HTML.Бигинформ("Список", "Образование", FormMethod.Почта))
@использование (в формате HTML.Бигинформ("Удалить", "Образование", FormMethod.Почта))
если да, то, пожалуйста, дайте мне предложения, как я могу подать заявку.

Заранее большое вам спасибо.

2 Ответов

Рейтинг:
2

F-ES Sitecore

Сделайте так, чтобы ваше действие удаления вернуло действие списка

public ActionResult List()
{
    // do work to build your model here

    return View("~/Views/Home/List.cshtml", model);
}

[HttpPost]
public ActionResult Delete()
{
    // do work to delete the data here

    return List();
}


Рейтинг:
1

Patrice T

Чтобы иметь 2 логики, вам нужно знать, какую логику применять всегда.
Таким образом, вы должны объединить в 1 логику.
Сделайте что-нибудь вроде:

if first_case
    apply_logic1
if second_case
    apply_logic2


Member 12224368

На самом деле это вид списка записей. В этих записях я могу искать средства фильтрации и удалять строку за строкой или более 1 записи одновременно.
ниже приведен мой код

@model IEnumerable< idbs_hrpayroll.models.educationviewmodel>
@*@использование PagedList.Mvc;*@
@* & lt;link href= "~ / Cs/PagedList.css " rel=" таблица стилей "type=" text/css" />*@

@{
Видовая сумка.список заголовков";
Layout = " ~ / Views/Shared/_EmployeeLayout.cshtml";
}

Образование


< div ng-controller= "EducationController">

< / div>

< голова>
в <мета имя="область просмотра" содержимого="ширина=устройство-ширина" /&ГТ;

<!-- Скрипт для проверки всех записей и удаления за один раз -->
&ЛТ;скрипт в src="~/scripts/jquery-1.7.1.min.js" тип="текст/JavaScript"&ГТ;&ЛТ;/скрипт>

<сценарий тип="текст/JavaScript" языка="JavaScript"; другими&ГТ;
$(функция () {
$("#checkAll"). click (функция () {
$("input[name='educationIdsToDelete']"). attr ("checked", this. checked);

});
$("input[name= 'educationIdsToDelete']"). click (функция () {
если ($("введите[имя educationIdsToDelete='']").длина == $("введите[имя educationIdsToDelete='']: проверено").длина) {
$("#checkAll"). attr ("checked", " checked");
}
ещё {
$("#checkAll"). removeAttr ("checked")
}
});
$("#btnSubmit"). click (функция () {
var count = $("input[name= 'educationIdsToDelete']: checked").длина;
if (count == 0) {
предупреждение ("нет строк, выбранных для удаления");
возвращать false;
}
ещё {
return confirm(count + " строка(ы) будет удалена");
}
});

});

< / script>
< / head>

< p>
@формат HTML.ActionLink("Добавить", " Добавить")
< / p>
< html>

& lt;тело>
< div style= "font-family:Verdana">

@использование (в формате HTML.Бигинформ("Список", "Образование", FormMethod.Почта))
{

@*< p>
Найти по квалификации: @Html. TextBox ("SearchString", ViewBag.CurrentFilter как строка)
< input type= "submit" value= "Search" />
< / p>*@


< div ng-controller= "LibraryController">
<div id= "tablediv">
&ЛТ;Р ИД="Е1"> Список образование&ЛТ;/п&ГТ;
< Таблица>

<tr>
@*< td & gt;Поиск по :< / td>*@
<td & gt;Поиск по :
& lt;select ng-model= "searchBy">
&ЛТ;значение параметра="$"&ГТ;&ЛТ;/вариант&ГТ;
&ЛТ;значение параметра="квалификация"и GT;квалификации&ЛТ;/вариант&ГТ;
&ЛТ;значение параметра="специализации"&ГТ;специализация&ЛТ;/вариант&ГТ;
&ЛТ;значение параметра="YearOfPassing"&ГТ;год прохождения&ЛТ;/вариант&ГТ;
< option value= "InstituteORUniversity" & gt;Institute/ Университет< / option>
< / select>
< / td>
< / tr>

<tr>
@*&ЛТ;тд>В Поиск :&ЛТ;/тд&ГТ;
< td> & lt; input type= "text" ng-model= "search[searchBy]" />< / td>*@
< td>
Поиск: @Html. TextBox ("SearchString", ViewBag.CurrentFilter как строка)
< input type= "submit" value= "Search" />
< / td>
< / tr>
@*<tr>
< td & gt;Поиск по :< / td>
< td>
& lt;select ng-model= "searchBy">
&ЛТ;значение параметра="$"&ГТ;&ЛТ;/вариант&ГТ;
&ЛТ;значение параметра="квалификация"и GT;квалификации&ЛТ;

Member 12224368

для этого кода я могу сделать любой поиск по: или удалить записи.
согласно с
@использование (в формате HTML.Бигинформ("Список", "Образование", FormMethod.Post)) -- Если я напишу эту строку, то только поиск По: работает
Если я перехожу из "списка" в "удалить" - удаление записей работает. Я хочу исполнять и то, и другое одновременно. Может ли пользователь одновременно искать (фильтровать) записи и удалять их.

пожалуйста, дайте мне несколько предложений или любую логику, как я могу это сделать.

Большое спасибо.

Patrice T

Воспользуйся Улучшить вопрос чтобы обновить ваш вопрос.
Чтобы каждый мог обратить внимание на эту информацию.