За основу мы взяли известный пример, поставляемый с
Итак, запускаем MS Visual Studio. Создаем проект ASP.NETWebSite (Razor)
После этого нам нужно создать базу данных MSSQLServerCompact 4.0 LocalDatabase. Для этого нужно щелкнуть правой кнопкой мыши по папке App_Data, выбрать пункт AddNewItem…
Из появившегося меню выбрать пункт MS SQL Server Compact 4.0 Local Database. Укажите имя базы данных Deream.sdf.
Откройте появившуюся базу данных Dream.
Щелкните правой кнопкой мыши по значку Tables -> CreateTable
Создайте таблицу CHARACTER_TBL так, как это показано на рисунке
Далее, мы заполним таблицу значениями. Для этого щелкните правой кнопкой мыши по значку CHARACTER_TBL, выберите пункт ShowTableData
Заполните таблицу значениями
Добавьте файл ListOfCharacters.cshtml
Введите следующий код:
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT CHARACTER_NAME, CHARACTER_DESCRIPTION, FAMILY_STATUS FROM CHARACTER_TBL ORDER BY CHARACTER_NAME";
}
<!DOCTYPEhtml>
<html>
<head>
<title>Список героев романа Роберта Льюиса Стивенсона "Остров Сокровищ"</title>
<style>
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
td {font-family: Verdana; color: #0094ff;font-size: 14px;}
th {font-family: Verdana; color: #0094ff;font-size: 16px;}
table, th, td {border: solid2px#0094ff;border-collapse:collapse;padding:2px;}
</style>
</head>
<body>
<h1>Список героев романа Роберта Льюиса Стивенсона "Остров Сокровищ"</h1>
<table>
<thead>
<tr>
<th>Имя персонажа</th>
<th>Описание</th>
<th>Семейное положение</th>
</tr>
</thead>
<tbody>
@foreach (var row indb.Query(selectQueryString)){
<tr>
<td>@row.CHARACTER_NAME</td>
<td>@row.CHARACTER_DESCRIPTION</td>
<td>@row.FAMILY_STATUS</td>
</tr>
}
</tbody>
</table>
</body>
</html>
Запустите проект:
Отображать табличные данные можно более наглядным способом:
WebGridOfCharacters.cshtml
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT CHARACTER_NAME, CHARACTER_DESCRIPTION,
FAMILY_STATUS FROM CHARACTER_TBL ORDER BY CHARACTER_NAME";
var data = db.Query(selectQueryString);
var grid = newWebGrid(data, defaultSort: "CHARACTER_NAME", rowsPerPage: 4);
}
<!DOCTYPEhtml>
<html>
<head>
<title>Список героев романа Роберта Льюиса Стивенсона "Остров Сокровищ"</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
.grid { margin: 4px; border-collapse: collapse; width: 600px; }
.head { background-color: #E8E8E8; font-weight: bold; font-family: Verdana; color: #0094ff;font-size: 16px;}
.gridth, .gridtd { border: 1pxsolid#C0C0C0; padding: 5px; font-family: Verdana; color: #0094ff;font-size: 14px;}
.alt { background-color: #E8E8E8; color: #000; }
.character { width: 200px; }
</style>
</head>
<body>
<h1>Список героев романа Роберта Льюиса Стивенсона "Остров Сокровищ"</h1>
@grid.GetHtml(
tableStyle: "grid",
headerStyle: "head",
alternatingRowStyle: "alt",
columns: grid.Columns(
grid.Column("CHARACTER_NAME", "Персонаж", style: "character"),
grid.Column("CHARACTER_DESCRIPTION", "Характер", format:@<i>@item.CHARACTER_DESCRIPTION</i>),
grid.Column("FAMILY_STATUS", "Семейное положение", format:@<text>@item.FAMILY_STATUS</text>)
)
)
</html>
Такой способ представления данных позволяет, в частности сортировать данные таблицы по столбцам и организовывать многостраничный просмотр.
Добавлять данные в таблицу можно с помощью веб-странички InsertOfCharacters.cshtml:
@{
vardb = Database.Open("Dream");
var CHARACTER_NAME = Request["CHARACTER_NAME"];
var CHARACTER_DESCRIPTION = Request["CHARACTER_DESCRIPTION"];
var FAMILY_STATUS = Request["FAMILY_STATUS"];
if (IsPost) {
// Считывание имени персонажа.
CHARACTER_NAME = Request["CHARACTER_NAME"];
if (CHARACTER_NAME.IsEmpty())
{
ModelState.AddError("CHARACTER_NAME", "Введитеимяперсонажа");
}
// Считываниеописанияпродукта.
CHARACTER_DESCRIPTION = Request["CHARACTER_DESCRIPTION"];
if (CHARACTER_DESCRIPTION.IsEmpty())
{
ModelState.AddError("CHARACTER_DESCRIPTION",
"Введите характер персонажа");
}
// Считывание семейного положения персонажа
FAMILY_STATUS = Request["FAMILY_STATUS"];
if (FAMILY_STATUS.IsEmpty())
{
ModelState.AddError("FAMILY_STATUS", "Укажитесемейноеположениеперсонажа");
}
// Определение запроса вставки. Значения, присваемые
// столбцам в таблице CHARACTER_TBL определяются как параметры
// (используя ключевое слово VALUES).
if (ModelState.IsValid) {
varinsertQuery = "INSERT INTO CHARACTER_TBL (CHARACTER_NAME, CHARACTER_DESCRIPTION,
FAMILY_STATUS) " + "VALUES (@0, @1, @2)";
db.Execute(insertQuery, CHARACTER_NAME, CHARACTER_DESCRIPTION, FAMILY_STATUS);
// Отображение страницы со списком продуктов.
Response.Redirect(@Href("~/ListOfCharacters"));
}
}
}
<!DOCTYPEhtml>
<html>
<head>
<title>Добавление продуктов</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
label { float: left; width: 8em; text-align: right;margin-right: 0.5em;
font-family: Verdana; color: #0094ff;font-size: 14px;}
fieldset { padding: 1em; border: 1pxsolid; width: 35em;}
legend { padding: 2px4p; border: 1pxsolid; font-weight: bold;font-family: Verdana; color: #0094ff;font-size: 14px;}
.errorDisplay { font-weight:bold; color:red; font-size:11pt; }
</style>
</head>
<body>
<h1>Добавление нового персонажа</h1>
<divclass=".errorDisplay">
@Html.ValidationSummary("Ошибки в добавляемом:")
</div>
<formmethod="post"action="">
<fieldset>
<legend>Персонаж</legend>
<div>
<label>Имя:</label>
<inputname="CHARACTER_NAME"type="text"size="50"
value="@CHARACTER_NAME"/>
</div>
<div>
<label>Характер:</label>
<inputname="CHARACTER_DESCRIPTION"type="text"size="50"
value="@CHARACTER_DESCRIPTION"/>
</div>
<div>
<label>Семейное положение:</label>
<inputname="FAMILY_STATUS"type="text"size="50"
value="@FAMILY_STATUS"/>
</div>
<div>
<label>nbsp;</label>
<inputtype="submit"value="Вставить"class="submit"/>
</div>
</fieldset>
</form>
</body>
</html>
Редактировать данные можно с помощью двух веб-страниц: EditCharacters.cshtml и UpdateCharacters.cshtml:
EditCharacters.cshtml
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT CHARACTER_ID, CHARACTER_NAME, CHARACTER_DESCRIPTION,
FAMILY_STATUS FROM CHARACTER_TBL ORDER BY CHARACTER_NAME";
}
<!DOCTYPEhtml>
<html>
<head>
<title>Изменение персонажей</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
td {font-family: Verdana; color: #0094ff;font-size: 14px;}
th {font-family: Verdana; color: #0094ff;font-size: 16px;}
table, th, td {border: solid2px#0094ff;border-collapse:collapse;padding:2px;}
</style>
</head>
<body>
<h1>Изменение персонажей</h1>
<table>
<thead>
<tr>
<th>nbsp;</th>
<th>Персонаж</th>
<th>Характер</th>
<th>Семейное положение</th>
</tr>
</thead>
<tbody>
@foreach (var row indb.Query(selectQueryString)) {
<tr>
<td><ahref="@Href("~/UpdateCharacters", row.CHARACTER_ID)">Правка</a></td>
<td>@row.CHARACTER_NAME</td>
<td>@row.CHARACTER_DESCRIPTION</td>
<td>@row.FAMILY_STATUS</td>
</tr>
}
</tbody>
</table>
</body>
</html>
UpdateCharacters.cshtml
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT * FROM CHARACTER_TBL WHERE CHARACTER_ID=@0";
var CHARACTER_ID = UrlData[0];
if (CHARACTER_ID.IsEmpty())
{
Response.Redirect(@Href("~/EditCharacters"));
}
var row = db.QuerySingle(selectQueryString, CHARACTER_ID);
var CHARACTER_NAME = row.CHARACTER_NAME;
var CHARACTER_DESCRIPTION = row.CHARACTER_DESCRIPTION;
var FAMILY_STATUS = row.FAMILY_STATUS;
if (IsPost) {
CHARACTER_NAME = Request["CHARACTER_NAME"];
if (String.IsNullOrEmpty(CHARACTER_NAME)) {
ModelState.AddError("CHARACTER_NAME", "Персонаж");
}
CHARACTER_DESCRIPTION = Request["CHARACTER_DESCRIPTION"];
if (String.IsNullOrEmpty(CHARACTER_DESCRIPTION)) {
ModelState.AddError("CHARACTER_DESCRIPTION","Характер");
}
FAMILY_STATUS = Request["FAMILY_STATUS"];
if (String.IsNullOrEmpty(FAMILY_STATUS)) {
ModelState.AddError("FAMILY_STATUS", "Семейное положение");
}
if (ModelState.IsValid) {
varupdateQueryString =
"UPDATE CHARACTER_TBL SET CHARACTER_NAME=@0, CHARACTER_DESCRIPTION=@1,
FAMILY_STATUS=@2 WHERE CHARACTER_ID=@3";
db.Execute(updateQueryString, CHARACTER_NAME, CHARACTER_DESCRIPTION, FAMILY_STATUS, CHARACTER_ID);
Response.Redirect(@Href("~/EditCharacters"));
}
}
}
<!DOCTYPE>
<html>
<head>
<title>Обновление персонажей</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
label { float: left; width: 8em; text-align: right;margin-right: 0.5em; font-family: Verdana; color: #0094ff;font-size: 14px;}
fieldset { padding: 1em; border: 1pxsolid; width: 35em;}
legend { padding: 2px4p; border: 1pxsolid; font-weight: bold;font-family: Verdana; color: #0094ff;font-size: 14px;}
.errorDisplay { font-weight:bold; color:red; }
</style>
</head>
<body>
<h1>Обновление персонажа</h1>
<divclass="errorDispla">
@Html.ValidationSummary("Ошибки в добавляемом:")
</div>
<formmethod="post"action="">
<fieldset>
<legend>Обновлениеперсонажа</legend>
<div>
<label>Персонаж:</label>
<inputname="CHARACTER_NAME"type="text"size="50"
value="@CHARACTER_NAME"/>
</div>
<div>
<label>Характер:</label>
<inputname="CHARACTER_DESCRIPTION"type="text"size="50"
value="@CHARACTER_DESCRIPTION"/>
</div>
<div>
<label>Семейное положение:</label>
<inputname="FAMILY_STATUS"type="text"size="50"
value="@FAMILY_STATUS"/>
</div>
<div>
<label>nbsp;</label>
<inputtype="submit"value="Обновить"class="submit"/>
</div>
</fieldset>
</form>
</body>
</html>
Для удаления записей из таблиц используются файлы: ListOfCharactesForDelete.cshtml и DeleteCharacter.cshtml.
ListOfCharactesForDelete.cshtml
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT * FROM CHARACTER_TBL ORDER BY CHARACTER_NAME";
}
<!DOCTYPEhtml>
<html>
<head>
<title>Удаление персонажа</title>
<style>
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
td {font-family: Verdana; color: #0094ff;font-size: 14px;}
th {font-family: Verdana; color: #0094ff;font-size: 16px;}
table, th, td {border: solid2px#0094ff;border-collapse:collapse;padding:2px;}
</style>
</head>
<body>
<h1>Удаление персонажа</h1>
<formmethod="post"action=""name="form">
<tableborder="1">
<thead>
<tr>
<th>nbsp;</th>
<th>Персонаж</th>
<th>Характер</th>
<th>Семейное положение</th>
</tr>
</thead>
<tbody>
@foreach (var row indb.Query(selectQueryString)) {
<tr>
<td><ahref="@Href("~/DeleteCharacter", row.CHARACTER_ID)">Удалить</a></td>
<td>@row.CHARACTER_NAME</td>
<td>@row.CHARACTER_DESCRIPTION</td>
<td>@row.FAMILY_STATUS</td>
</tr>
}
</tbody>
</table>
</form>
</body>
</html>
DeleteCharacter.cshtml
@{
vardb = Database.Open("Dream");
varCharacterId = UrlData[0];
var character = db.QuerySingle("SELECT * FROM CHARACTER_TBL WHERE CHARACTER_ID = @0", CharacterId);
if (IsPost !CharacterId.IsEmpty()) {
vardeleteQueryString = "DELETE FROM CHARACTER_TBL WHERE CHARACTER_ID=@0";
db.Execute(deleteQueryString, CharacterId);
Response.Redirect("~/ListOfCharactersForDelete");
}
}
<!DOCTYPEhtml>
<html>
<head>
<title>Удалениеперсонажа</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
p { font-family: Verdana; color: #0094ff;font-size: 14px;}
</style>
</head>
<body>
<h1>Подтверждение удаления персонажа</h1>
<formmethod="post"action=""name="form">
<p>Действительно удалить этого персонажа?</p>
<p>Персонаж: @character.CHARACTER_NAME<br/>
Характер: @character.CHARACTER_DESCRIPTION<br/>
Семейное положение: @character.FAMILY_STATUS</p>
<p><inputtype="submit"value="Удалить"/></p>
</form>
</body>
</html>
За основу мы взяли известный пример, поставляемый с
Итак, запускаем MS Visual Studio. Создаем проект ASP.NETWebSite (Razor)
После этого нам нужно создать базу данных MSSQLServerCompact 4.0 LocalDatabase. Для этого нужно щелкнуть правой кнопкой мыши по папке App_Data, выбрать пункт AddNewItem…
Из появившегося меню выбрать пункт MS SQL Server Compact 4.0 Local Database. Укажите имя базы данных Deream.sdf.
Откройте появившуюся базу данных Dream.
Щелкните правой кнопкой мыши по значку Tables -> CreateTable
Создайте таблицу CHARACTER_TBL так, как это показано на рисунке
Далее, мы заполним таблицу значениями. Для этого щелкните правой кнопкой мыши по значку CHARACTER_TBL, выберите пункт ShowTableData
Заполните таблицу значениями
Добавьте файл ListOfCharacters.cshtml
Введите следующий код:
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT CHARACTER_NAME, CHARACTER_DESCRIPTION, FAMILY_STATUS FROM CHARACTER_TBL ORDER BY CHARACTER_NAME";
}
<!DOCTYPEhtml>
<html>
<head>
<title>Список героев романа Роберта Льюиса Стивенсона "Остров Сокровищ"</title>
<style>
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
td {font-family: Verdana; color: #0094ff;font-size: 14px;}
th {font-family: Verdana; color: #0094ff;font-size: 16px;}
table, th, td {border: solid2px#0094ff;border-collapse:collapse;padding:2px;}
</style>
</head>
<body>
<h1>Список героев романа Роберта Льюиса Стивенсона "Остров Сокровищ"</h1>
<table>
<thead>
<tr>
<th>Имя персонажа</th>
<th>Описание</th>
<th>Семейное положение</th>
</tr>
</thead>
<tbody>
@foreach (var row indb.Query(selectQueryString)){
<tr>
<td>@row.CHARACTER_NAME</td>
<td>@row.CHARACTER_DESCRIPTION</td>
<td>@row.FAMILY_STATUS</td>
</tr>
}
</tbody>
</table>
</body>
</html>
Запустите проект:
Отображать табличные данные можно более наглядным способом:
WebGridOfCharacters.cshtml
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT CHARACTER_NAME, CHARACTER_DESCRIPTION,
FAMILY_STATUS FROM CHARACTER_TBL ORDER BY CHARACTER_NAME";
var data = db.Query(selectQueryString);
var grid = newWebGrid(data, defaultSort: "CHARACTER_NAME", rowsPerPage: 4);
}
<!DOCTYPEhtml>
<html>
<head>
<title>Список героев романа Роберта Льюиса Стивенсона "Остров Сокровищ"</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
.grid { margin: 4px; border-collapse: collapse; width: 600px; }
.head { background-color: #E8E8E8; font-weight: bold; font-family: Verdana; color: #0094ff;font-size: 16px;}
.gridth, .gridtd { border: 1pxsolid#C0C0C0; padding: 5px; font-family: Verdana; color: #0094ff;font-size: 14px;}
.alt { background-color: #E8E8E8; color: #000; }
.character { width: 200px; }
</style>
</head>
<body>
<h1>Список героев романа Роберта Льюиса Стивенсона "Остров Сокровищ"</h1>
@grid.GetHtml(
tableStyle: "grid",
headerStyle: "head",
alternatingRowStyle: "alt",
columns: grid.Columns(
grid.Column("CHARACTER_NAME", "Персонаж", style: "character"),
grid.Column("CHARACTER_DESCRIPTION", "Характер", format:@<i>@item.CHARACTER_DESCRIPTION</i>),
grid.Column("FAMILY_STATUS", "Семейное положение", format:@<text>@item.FAMILY_STATUS</text>)
)
)
</html>
Такой способ представления данных позволяет, в частности сортировать данные таблицы по столбцам и организовывать многостраничный просмотр.
Добавлять данные в таблицу можно с помощью веб-странички InsertOfCharacters.cshtml:
@{
vardb = Database.Open("Dream");
var CHARACTER_NAME = Request["CHARACTER_NAME"];
var CHARACTER_DESCRIPTION = Request["CHARACTER_DESCRIPTION"];
var FAMILY_STATUS = Request["FAMILY_STATUS"];
if (IsPost) {
// Считывание имени персонажа.
CHARACTER_NAME = Request["CHARACTER_NAME"];
if (CHARACTER_NAME.IsEmpty())
{
ModelState.AddError("CHARACTER_NAME", "Введитеимяперсонажа");
}
// Считываниеописанияпродукта.
CHARACTER_DESCRIPTION = Request["CHARACTER_DESCRIPTION"];
if (CHARACTER_DESCRIPTION.IsEmpty())
{
ModelState.AddError("CHARACTER_DESCRIPTION",
"Введите характер персонажа");
}
// Считывание семейного положения персонажа
FAMILY_STATUS = Request["FAMILY_STATUS"];
if (FAMILY_STATUS.IsEmpty())
{
ModelState.AddError("FAMILY_STATUS", "Укажитесемейноеположениеперсонажа");
}
// Определение запроса вставки. Значения, присваемые
// столбцам в таблице CHARACTER_TBL определяются как параметры
// (используя ключевое слово VALUES).
if (ModelState.IsValid) {
varinsertQuery = "INSERT INTO CHARACTER_TBL (CHARACTER_NAME, CHARACTER_DESCRIPTION,
FAMILY_STATUS) " + "VALUES (@0, @1, @2)";
db.Execute(insertQuery, CHARACTER_NAME, CHARACTER_DESCRIPTION, FAMILY_STATUS);
// Отображение страницы со списком продуктов.
Response.Redirect(@Href("~/ListOfCharacters"));
}
}
}
<!DOCTYPEhtml>
<html>
<head>
<title>Добавление продуктов</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
label { float: left; width: 8em; text-align: right;margin-right: 0.5em;
font-family: Verdana; color: #0094ff;font-size: 14px;}
fieldset { padding: 1em; border: 1pxsolid; width: 35em;}
legend { padding: 2px4p; border: 1pxsolid; font-weight: bold;font-family: Verdana; color: #0094ff;font-size: 14px;}
.errorDisplay { font-weight:bold; color:red; font-size:11pt; }
</style>
</head>
<body>
<h1>Добавление нового персонажа</h1>
<divclass=".errorDisplay">
@Html.ValidationSummary("Ошибки в добавляемом:")
</div>
<formmethod="post"action="">
<fieldset>
<legend>Персонаж</legend>
<div>
<label>Имя:</label>
<inputname="CHARACTER_NAME"type="text"size="50"
value="@CHARACTER_NAME"/>
</div>
<div>
<label>Характер:</label>
<inputname="CHARACTER_DESCRIPTION"type="text"size="50"
value="@CHARACTER_DESCRIPTION"/>
</div>
<div>
<label>Семейное положение:</label>
<inputname="FAMILY_STATUS"type="text"size="50"
value="@FAMILY_STATUS"/>
</div>
<div>
<label>nbsp;</label>
<inputtype="submit"value="Вставить"class="submit"/>
</div>
</fieldset>
</form>
</body>
</html>
Редактировать данные можно с помощью двух веб-страниц: EditCharacters.cshtml и UpdateCharacters.cshtml:
EditCharacters.cshtml
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT CHARACTER_ID, CHARACTER_NAME, CHARACTER_DESCRIPTION,
FAMILY_STATUS FROM CHARACTER_TBL ORDER BY CHARACTER_NAME";
}
<!DOCTYPEhtml>
<html>
<head>
<title>Изменение персонажей</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
td {font-family: Verdana; color: #0094ff;font-size: 14px;}
th {font-family: Verdana; color: #0094ff;font-size: 16px;}
table, th, td {border: solid2px#0094ff;border-collapse:collapse;padding:2px;}
</style>
</head>
<body>
<h1>Изменение персонажей</h1>
<table>
<thead>
<tr>
<th>nbsp;</th>
<th>Персонаж</th>
<th>Характер</th>
<th>Семейное положение</th>
</tr>
</thead>
<tbody>
@foreach (var row indb.Query(selectQueryString)) {
<tr>
<td><ahref="@Href("~/UpdateCharacters", row.CHARACTER_ID)">Правка</a></td>
<td>@row.CHARACTER_NAME</td>
<td>@row.CHARACTER_DESCRIPTION</td>
<td>@row.FAMILY_STATUS</td>
</tr>
}
</tbody>
</table>
</body>
</html>
UpdateCharacters.cshtml
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT * FROM CHARACTER_TBL WHERE CHARACTER_ID=@0";
var CHARACTER_ID = UrlData[0];
if (CHARACTER_ID.IsEmpty())
{
Response.Redirect(@Href("~/EditCharacters"));
}
var row = db.QuerySingle(selectQueryString, CHARACTER_ID);
var CHARACTER_NAME = row.CHARACTER_NAME;
var CHARACTER_DESCRIPTION = row.CHARACTER_DESCRIPTION;
var FAMILY_STATUS = row.FAMILY_STATUS;
if (IsPost) {
CHARACTER_NAME = Request["CHARACTER_NAME"];
if (String.IsNullOrEmpty(CHARACTER_NAME)) {
ModelState.AddError("CHARACTER_NAME", "Персонаж");
}
CHARACTER_DESCRIPTION = Request["CHARACTER_DESCRIPTION"];
if (String.IsNullOrEmpty(CHARACTER_DESCRIPTION)) {
ModelState.AddError("CHARACTER_DESCRIPTION","Характер");
}
FAMILY_STATUS = Request["FAMILY_STATUS"];
if (String.IsNullOrEmpty(FAMILY_STATUS)) {
ModelState.AddError("FAMILY_STATUS", "Семейное положение");
}
if (ModelState.IsValid) {
varupdateQueryString =
"UPDATE CHARACTER_TBL SET CHARACTER_NAME=@0, CHARACTER_DESCRIPTION=@1,
FAMILY_STATUS=@2 WHERE CHARACTER_ID=@3";
db.Execute(updateQueryString, CHARACTER_NAME, CHARACTER_DESCRIPTION, FAMILY_STATUS, CHARACTER_ID);
Response.Redirect(@Href("~/EditCharacters"));
}
}
}
<!DOCTYPE>
<html>
<head>
<title>Обновление персонажей</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
label { float: left; width: 8em; text-align: right;margin-right: 0.5em; font-family: Verdana; color: #0094ff;font-size: 14px;}
fieldset { padding: 1em; border: 1pxsolid; width: 35em;}
legend { padding: 2px4p; border: 1pxsolid; font-weight: bold;font-family: Verdana; color: #0094ff;font-size: 14px;}
.errorDisplay { font-weight:bold; color:red; }
</style>
</head>
<body>
<h1>Обновление персонажа</h1>
<divclass="errorDispla">
@Html.ValidationSummary("Ошибки в добавляемом:")
</div>
<formmethod="post"action="">
<fieldset>
<legend>Обновлениеперсонажа</legend>
<div>
<label>Персонаж:</label>
<inputname="CHARACTER_NAME"type="text"size="50"
value="@CHARACTER_NAME"/>
</div>
<div>
<label>Характер:</label>
<inputname="CHARACTER_DESCRIPTION"type="text"size="50"
value="@CHARACTER_DESCRIPTION"/>
</div>
<div>
<label>Семейное положение:</label>
<inputname="FAMILY_STATUS"type="text"size="50"
value="@FAMILY_STATUS"/>
</div>
<div>
<label>nbsp;</label>
<inputtype="submit"value="Обновить"class="submit"/>
</div>
</fieldset>
</form>
</body>
</html>
Для удаления записей из таблиц используются файлы: ListOfCharactesForDelete.cshtml и DeleteCharacter.cshtml.
ListOfCharactesForDelete.cshtml
@{
vardb = Database.Open("Dream");
varselectQueryString = "SELECT * FROM CHARACTER_TBL ORDER BY CHARACTER_NAME";
}
<!DOCTYPEhtml>
<html>
<head>
<title>Удаление персонажа</title>
<style>
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
td {font-family: Verdana; color: #0094ff;font-size: 14px;}
th {font-family: Verdana; color: #0094ff;font-size: 16px;}
table, th, td {border: solid2px#0094ff;border-collapse:collapse;padding:2px;}
</style>
</head>
<body>
<h1>Удаление персонажа</h1>
<formmethod="post"action=""name="form">
<tableborder="1">
<thead>
<tr>
<th>nbsp;</th>
<th>Персонаж</th>
<th>Характер</th>
<th>Семейное положение</th>
</tr>
</thead>
<tbody>
@foreach (var row indb.Query(selectQueryString)) {
<tr>
<td><ahref="@Href("~/DeleteCharacter", row.CHARACTER_ID)">Удалить</a></td>
<td>@row.CHARACTER_NAME</td>
<td>@row.CHARACTER_DESCRIPTION</td>
<td>@row.FAMILY_STATUS</td>
</tr>
}
</tbody>
</table>
</form>
</body>
</html>
DeleteCharacter.cshtml
@{
vardb = Database.Open("Dream");
varCharacterId = UrlData[0];
var character = db.QuerySingle("SELECT * FROM CHARACTER_TBL WHERE CHARACTER_ID = @0", CharacterId);
if (IsPost !CharacterId.IsEmpty()) {
vardeleteQueryString = "DELETE FROM CHARACTER_TBL WHERE CHARACTER_ID=@0";
db.Execute(deleteQueryString, CharacterId);
Response.Redirect("~/ListOfCharactersForDelete");
}
}
<!DOCTYPEhtml>
<html>
<head>
<title>Удалениеперсонажа</title>
<styletype="text/css">
h1 {font-family: 'Comic Sans MS'; color: #0094ff;font-size: 16px;}
p { font-family: Verdana; color: #0094ff;font-size: 14px;}
</style>
</head>
<body>
<h1>Подтверждение удаления персонажа</h1>
<formmethod="post"action=""name="form">
<p>Действительно удалить этого персонажа?</p>
<p>Персонаж: @character.CHARACTER_NAME<br/>
Характер: @character.CHARACTER_DESCRIPTION<br/>
Семейное положение: @character.FAMILY_STATUS</p>
<p><inputtype="submit"value="Удалить"/></p>
</form>
</body>
</html>
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.