Всем привет! Начал изучать mvc 4 реализовал работу с бд, сейчас хочу сделать редактирование записей бд. Но не знаю как это сделать . Имеется три таблицы все они связаны по id.
В представление удаления есть кнопки удаление и редактирование. нажимаешь кнопку удаление и передается параметр в контроллер и происходит удаление, таким же образом нажимаем редактирование и передается параметр должно открыться другое преставление и там уже изменяем выбранную запись. а выбирается запись по параметру который передается в это преставление где мы изменяем.
Как правильно сделать? может есть какие примеры
Вот так выглядит контроллер:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
public ActionResult Redaktor(o_klient model, string id_redaktor)
{
if (!string.IsNullOrEmpty(id_redaktor))
{
var redakt = db.klient_new.Where(id => id.id == Convert.ToInt16(id_redaktor)).Single();//удаляем с каждой таблицы по одной записи(сингл) по переданному параметру idd.
var redakt_tovar = db.tovar.Where(id => id.id == Convert.ToInt16(id_redaktor)).Single();
var redakt_cena = db.cena.Where(id => id.id == Convert.ToInt16(id_redaktor)).Single();
return View("Redaktor");
}
return View("Redaktor");
}
вот так выглядет представление в нем уже содержиться удаление и щас вот делаю редактривание:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
@model MvcApplication3.Models.o_klient
@{
ViewBag.Title = "Del";
Layout = "~/Views/Shared/_Layout.cshtml";
}
@*<script type="text/javascript">
function refresh()
{
location.reload();
}
</script>*@
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<header>
<link href="~/css/start/jquery-ui-1.10.1.custom.min.css" rel="stylesheet" />
<script src="~/Scripts/jquery-1.7.1.js"></script>
<script src="~/Scripts/jquery-ui-1.10.1.custom.min.js"></script>
</header>
<body>
<div style="padding:10px;border:1px solid #0094ff; background-color:#d9fffb;border-radius:10px;margin-top:150px;">
<table BORDER=1 ALIGN=CENTER CELLPADDING=1 class="menu" >
<TR>
<TH class="podsvetka_stolbca">ID</TH>
<TH>Клиент</TH>
<TH>Город</TH>
<TH>Сорт</TH>
<TH>Наименование</TH>
<TH>Цена</TH>
<TH>Дата покупки</TH>
</TR>
@foreach (MvcApplication3.Models.o_klient mod in ViewBag.data)
{
using (Html.BeginForm("Del", "Pervii", new { @valuee="1"}))
{
<TR> <TD>@mod.ID</TD> <TD>@mod.FIO</TD> <TD>@mod.GOROD</TD> <TD>@mod.naimenovanie1</TD> <TD>@mod.sort1</TD> <TD>@mod.CENA</TD> <TD>@mod.DATA_POKUPKI</TD>
<input type="hidden" name="idd" value=" @mod.ID" />
@*<TD><input type="submit" value="Удалить" onclick="refresh()" /></TD></TR>
*@
<TD><button class ="button" style = "width:150px">Удалить</button></TD>
}
}
@using(Html.BeginForm("Redaktor", "Pervii", new { @valuee="2"}))
<input type="hidden" name="id_redaktor" value ="@mod.ID " />
<TD><button class = "button" style ="width:150px">Изменить</button></TD></TR>
}
</table>
</div>
</body>
</html>
так выглядет представление редактирование:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
@model MvcApplication3.Models.o_klient
@{
ViewBag.Title = "Redaktor";
Layout = "~/Views/Shared/_Layout.cshtml";
string value = "";
}
@using (Html.BeginForm("Redaktor", "Pervii", null))
{
<table>
<tr><td><p>ID:</p></td><td>@Html.HiddenFor(x => x.ID)@Html.ValidationMessageFor(model => model.ID)</td></tr>
<tr><td><p>Город:</p></td><td>@Html.EditorFor(x => x.GOROD)@Html.ValidationMessageFor(model => model.GOROD)</td></tr>
<tr><td><p>ФИО:</p></td><td>@Html.EditorFor(x => x.FIO)@Html.ValidationMessageFor(model => model.FIO)</td></tr>
<tr><td><p>Сорт:</p></td><td> @Html.EditorFor(x => x.sort1)@Html.ValidationMessageFor(model => model.sort1)</td></tr>
<tr><td><p>Наименование:</p></td><td>@Html.EditorFor(x => x.naimenovanie1)@Html.ValidationMessageFor(model => model.naimenovanie1)</td></tr>
<tr><td><p>Цена:</p></td><td>@Html.EditorFor(x => x.CENA)@Html.ValidationMessageFor(model => model.CENA)</td></tr>
<tr><td><p>Дата покупки:</p></td><td>@Html.EditorFor(x => x.DATA_POKUPKI)@Html.ValidationMessageFor(model => model.DATA_POKUPKI)</td></tr>
</table>
<button class="m1" style="width:150px" >Добавить</button>