Radzhab
@Radzhab

Как получить url из запроса?

Хочу переименовать значение в таблице. Есть его старое название, и есть новое название. Как мне получить оба параметра в контроллере? Identity 3.0

ab9af79c2900436e8e9c024d618f513b.png
  • Вопрос задан
  • 178 просмотров
Пригласить эксперта
Ответы на вопрос 2
@dmitryKovalskiy
программист средней руки
При отрисовке view-хи записать старое значение в hidden-поле. А далее
или 1) в action в качестве входного параметра добавить string OldroleName, string newRoleName.
или 2) Разбирать объект Request. Он умеет в индексаторы и код Request["paramName"] должен вернуть то что вам нужно.
Ответ написан
Комментировать
Предположим, что используем EF и в качестве модели класс AspNetRole. У AspNetRole есть Id и Name.
Во view
@using (Html.BeginForm())
{
    <div class="form-horizontal">
        <hr />
        @Html.ValidationSummary(true, "", new { @class = "text-danger" })
        @Html.AntiForgeryToken()
        @Html.HiddenFor(model => model.Id)
        
        <div class="form-group">
            @Html.LabelFor(model => model.Name, htmlAttributes: new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.EditorFor(model => model.Name, new { htmlAttributes = new { @class = "form-control" } })
                @Html.ValidationMessageFor(model => model.Name, "", new { @class = "text-danger" })
            </div>
        </div>
        <div class="form-group">
            <div class="col-md-offset-2 col-md-10">
                <input type="submit" value="Сохранить" class="btn btn-primary" />
                @Html.ActionLink("Отмена", "Index", null, new { @class="btn btn-default"})
            </div>
        </div>
     </div>
}


В контроллере
[HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult Edit(AspNetRole model)
        {
            if (ModelState.IsValid)
            {
                db.Entry(model).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Index");
            }
            return View(model);
        }
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы