Dream-Land.by 
Вход
  Поиск  
Программирование, рисование, тестирование
Путешествия
Домашние животные
Скидки в магазинах Минска (Июль 2018)
Концерты
Мюзикл "Голубая камея" г. Минск 24 июля 2018
Афишу
Спорт занятия
Обучение плаванию детей (мальчики с 7 лет, девочки с 7 лет) г. Речица
Спорт занятие
Объявления
Памятники из гранита
Объявление
Детские центры
Семейный центр Катерины Ковровой (г. Минск, Беларусь)
Заведение
MyLibraryMVC
  Посмотрели 12 раз(а)    
 MyLibraryMVC 
последнее обновление: 11 июля 2018
  Web.config
<?xml version="1.0" encoding="utf-8"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=301880
  -->

<configuration>

  <appSettings>
    <add key="webpages:Version" value="3.0.0.0"/>
    <add key="webpages:Enabled" value="false"/>
    <add key="ClientValidationEnabled" value="true"/>
    <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
  </appSettings>

  <system.web>
    <compilation debug="true" targetFramework="4.5"/>
    <httpRuntime targetFramework="4.5"/>
  </system.web>

  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="1.1.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-1.5.2.14234" newVersion="1.5.2.14234"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-5.1.0.0" newVersion="5.1.0.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

</configuration>
  C#     Global.asax.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;

namespace MyLibraryMVC
{
    public class MvcApplication : System.Web.HttpApplication
    {
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            RouteConfig.RegisterRoutes(RouteTable.Routes);
        }
    }
}


Views
  Views\Home\AddFilm.cshtml
@model MyLibraryMVC.Models.Film

@{
       Layout = null;
}

<!DOCTYPE html>

<html>
<head>
       <meta name="viewport" content="width=device-width" />
       <title>Добавление кино</title>
       <link href="~/Content/bootstrap.css" rel="stylesheet" />
       <link href="~/Content/bootstrap-theme.css" rel="stylesheet" />
       <style>
              td {
                     padding-top: 14px;
              }
       </style>
</head>

<body>
       <center>
              <h2>Добавление фильма </h2>

              @using (Html.BeginForm())
              {
                     @Html.ValidationSummary()
                     <table class="" border="0" style="width:400px;">
                            <!-- Название фильма -->
                            <tr>
                                   <td align="right">Название фильма:</td>
                                   <td style="padding-left:7px;">@Html.TextBoxFor(model => model.FilmName)</td>
                            </tr>

                            <!-- Год выпуска -->
                            <tr>
                                   <td align="right">Год выпуска:</td>
                                   <td style="padding-left:7px;">@Html.TextBoxFor(model => model.Year)</td>
                            </tr>

                            <!-- Страна -->
                            <tr>
                                   <td align="right">Страна:</td>
                                   <td style="padding-left:7px;">@Html.DropDownListFor(model => model.Country, @Model.ListCountries, "Выберите страну", new { @class = "form-control" })
                            </tr>

                            <!-- Жанр -->
                            <tr>
                                   <td align="right">Жанр:</td>
                                   <td style="padding-left:7px;">@Html.TextBoxFor(model => model.Type)</td>
                            </tr>

                     </table>

                     <br />

                     <input type="submit" class="btn btn-success" value="Добавить" />
              }
       </center>
</body>
</html>
  Views\Home\EditFilm.cshtml
@model MyLibraryMVC.Models.Film

@{
       Layout = null;
}

<!DOCTYPE html>

<html>
<head>
       <meta name="viewport" content="width=device-width" />
       <title>Редактирование фильма</title>
       <link href="~/Content/bootstrap.css" rel="stylesheet" />
       <link href="~/Content/bootstrap-theme.css" rel="stylesheet" />
       <style>
              td {
                     padding-top: 14px;
              }
       </style>
</head>

<body>
       <center>

              <h2>Редактирование фильма</h2>

              @using (Html.BeginForm("UpdateFilmInDatabase", null))
              {
                     @Html.ValidationSummary()

                     <table class="" border="0" style="width:400px;">
                            <!-- Название фильма -->
                            <tr>
                                   <td align="right">Название фильма:</td>
                                   <td style="padding-left:7px;">@Html.TextBoxFor(model1 => model1.FilmName)</td>
                            </tr>

                            <!-- Год выпуска -->
                            <tr>
                                   <td align="right">Год выпуска:</td>
                                   <td style="padding-left:7px;">@Html.TextBoxFor(model => model.Year)</td>
                            </tr>

                            <!-- Страна -->
                            <tr>
                                   <td align="right">Страна:</td>
                                   <td style="padding-left:7px;">@Html.DropDownListFor(model => model.Country, @Model.ListCountries, "Выберите страну", new { @class = "form-control" })
                            </tr>

                            <!-- Жанр -->
                            <tr>
                                   <td align="right">Жанр:</td>
                                   <td style="padding-left:7px;">@Html.TextBoxFor(model => model.Type)</td>
                            </tr>
                     </table>

                     <br />

                     @Html.HiddenFor(model => model.ID)
                     <input type="submit" class="btn btn-success" value="Сохранить" />
              }
       </center>

</body>
</html>
  Views\Home\FilmAlreadyExists.cshtml
@model MyLibraryMVC.Models.Film

@{
       Layout = null;
}

<!DOCTYPE html>

<html>
<head>
       <meta name="viewport" content="width=device-width" />
       <title>Фильм не добавился</title>
</head>
<body>
       <div>
              Фильм "@Model.FilmName" уже существует
       </div>
</body>
</html>
  Views\Home\Index.cshtml
@model List<MyLibraryMVC.Models.Film>

@{
       Layout = null;
}

<!DOCTYPE html>

<html>
<head>
       <meta name="viewport" content="width=device-width" />
       <title>Моя библиотека</title>
       <link href="~/Content/bootstrap.css" rel="stylesheet" />
       <link href="~/Content/bootstrap-theme.css" rel="stylesheet" />

       <style type='text/css'>
              .ClassAddFilm {
                     color: blue;
                     background-color: yellow;
                     font-size: 18px;
              }

              .ClassDeleteFilm {
                     color: red;
                     font-size: 16px;
              }
       </style>
</head>

<!-- body -->
<body>
       <!-- "Добавить" фильм -->
       <div class="text-center">
              <h2>Библиотека фильмов</h2>

              <br />

              @Html.ActionLink("+ Добавить кино", "AddFilm", null, new { @class = "ClassAddFilm" })

              <br /><br /><br />
       </div>

       <!-- список фильмов -->
       <center>
              <table class="table table-striped" border="0" style="width:600px;">
                     <tr>
                            <th>Название фильма</th>
                            <th>Год выпуска</th>
                            <th>Страна</th>
                            <th>Жанр</th>
                            <th colspan="2"></th>
                     </tr>
                     @foreach (MyLibraryMVC.Models.Film item in Model)
                     {
                            <tr>
                                   <td>@item.FilmName</td>
                                   <td>@item.Year</td>
                                   <td>@item.Country</td>
                                   <td>@item.Type</td>
                                   <td>@Html.ActionLink("Редактировать", "EditFilm", @item)</td>
                                   <td>@Html.ActionLink("Удалить", "DeleteFilm", @item, new { @class = "ClassDeleteFilm" })</td>
                            </tr>
                     }
              </table>
       </center>

</body>
</html>


Models
  C#     Models\Film.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;// подключить чтобы использовать валидацию
using System.Data.SqlClient;
using System.Data;
using System.Web.Mvc;

namespace MyLibraryMVC.Models
{
       public class Film
       {
              public int ID { get; set; }

              [Required(ErrorMessage = "Пожалуйста, введите название фильма")]
              [RegularExpression("[a-zA-Z ]+", ErrorMessage = "Вы ввели некорректное название филма (только агл буквы)")]
              public string FilmName { get; set; }

              public int Year { get; set; }

              public string Country { get; set; }

              public string Type { get; set; }

              public static string connectionString = "server=EVGENI; Database=MYLIBRARY; Integrated Security=SSPI;";

              public static int FilmsCount()
              {
                     return Film.MakeListFilms().Count;
              }

              public static int CreateFilmID()
              {
                     // connection
                     SqlConnection connection = new SqlConnection(Film.connectionString);

                     // sql query
                     string SQLcommand = "SELECT MAX(ID) from FILMS";

                     SqlDataAdapter adapter = new SqlDataAdapter(SQLcommand, connection);
                     DataSet dataset = new DataSet();
                     int rows = adapter.Fill(dataset, "FILMS");

                     // take rows
                     DataRow row = dataset.Tables["FILMS"].Rows[0];
                     if (row == null)
                            return 1;
                     int max_id = int.Parse(row[0].ToString());
                     return max_id + 1;
              }

              public static void AddFilm(Film item)
              {
                     // connection
                     SqlConnection connection = new SqlConnection(Film.connectionString);
                     connection.Open();

                     // create new id
                     int id = Film.CreateFilmID();

                     // sql query
                     string SQLQuery = "INSERT INTO FILMS (ID, NAME,COUNTRY, TYPE, YEAR) VALUES (@ID, @NAME, @COUNTRY, @TYPE, @YEAR)";

                     using (SqlCommand cmd = new SqlCommand(SQLQuery, connection))
                     {
                            // Добавить параметры
                            cmd.Parameters.AddWithValue("@ID", id);
                            cmd.Parameters.AddWithValue("@NAME", item.FilmName);
                            cmd.Parameters.AddWithValue("@COUNTRY", item.Country);
                            cmd.Parameters.AddWithValue("@TYPE", item.Type);
                            cmd.Parameters.AddWithValue("@YEAR", item.Year);

                            cmd.ExecuteNonQuery();
                     }
              }

              public static void EditFilm(Film item)
              {
                     // connection
                     SqlConnection connection = new SqlConnection(Film.connectionString);
                     connection.Open();

                     // sql query
                     string SQLQuery = "UPDATE FILMS SET NAME=@NAME, COUNTRY=@COUNTRY, TYPE=@TYPE, YEAR=@YEAR WHERE ID=@ID";

                     using (SqlCommand cmd = new SqlCommand(SQLQuery, connection))
                     {
                            // Добавить параметры
                            cmd.Parameters.AddWithValue("@ID", item.ID);
                            cmd.Parameters.AddWithValue("@NAME", item.FilmName);
                            cmd.Parameters.AddWithValue("@COUNTRY", item.Country);
                            cmd.Parameters.AddWithValue("@TYPE", item.Type);
                            cmd.Parameters.AddWithValue("@YEAR", item.Year);

                            cmd.ExecuteNonQuery();
                     }
              }

              public static void DeleteFilm(int id)
              {
                     // connection
                     SqlConnection connection = new SqlConnection(Film.connectionString);
                     connection.Open();

                     // sql query
                     string SQLQuery = "DELETE FILMS  WHERE ID=@ID";

                     using (SqlCommand cmd = new SqlCommand(SQLQuery, connection))
                     {
                            // Добавить параметры
                            cmd.Parameters.AddWithValue("@ID", id);

                            cmd.ExecuteNonQuery();
                     }
              }


              public static List<Film> MakeListFilms()
              {
                     // connection
                     SqlConnection connection = new SqlConnection(Film.connectionString);

                     // sql query
                     string SQLcommand = "SELECT * from FILMS";

                     SqlDataAdapter adapter = new SqlDataAdapter(SQLcommand, connection);
                     DataSet dataset = new DataSet();
                     int rows = adapter.Fill(dataset, "FILMS");

                     // take rows
                     List<Film> listFilms = new List<Film>();
                     foreach (DataRow row in dataset.Tables["FILMS"].Rows)
                     {
                            Film film = new Film();
                            film.ID = int.Parse(row["ID"].ToString());
                            film.FilmName = row["NAME"].ToString();
                            film.Country = row["COUNTRY"].ToString();
                            film.Type = row["TYPE"].ToString();
                            film.Year = int.Parse(row["YEAR"].ToString());
                            listFilms.Add(film);
                     }

                     return listFilms;

              }

              public static bool IsFilmExists(string FilmName)
              {
                     SqlConnection connection = new SqlConnection(Film.connectionString);

                     // sql query
                     string SQLcommand = "SELECT * from FILMS WHERE NAME='" + FilmName + "'";

                     SqlDataAdapter adapter = new SqlDataAdapter(SQLcommand, connection);
                     DataSet dataset = new DataSet();
                     int rows = adapter.Fill(dataset, "FILMS");
                     return rows > 0;
              }

              public IEnumerable<SelectListItem> ListCountries
              {
                     get
                     {
                            List<SelectListItem> listItems = new List<SelectListItem>()
                            {
                                   new SelectListItem() { Text = "Belarus", Value = "Belarus"},
                                   new SelectListItem() { Text = "USA", Value = "USA"},
                                   new SelectListItem() { Text = "France", Value = "France"},
                                   new SelectListItem() { Text = "England", Value = "England"}
                            };
                            return listItems;
                     }
              }
       }
}


Controllers
  C#     Controllers\HomeController.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Configuration;
using System.Data.SqlClient;
using System.Data;

using MyLibraryMVC.Models;

namespace MyLibraryMVC.Controllers
{
       public class HomeController : Controller
       {
              // GET: Home
              public ActionResult Index()
              {
                     List<Film> list = Film.MakeListFilms();
                     return View("Index", list);
              }

              [HttpGet]
              public ActionResult AddFilm()
              {
                     return View(new Film());
              }

              [HttpPost]
              public ActionResult AddFilm(Film myfilm)
              {
                     if (Film.IsFilmExists(myfilm.FilmName))
                            return View("FilmAlreadyExists", myfilm);

                     // list films
                     Film.AddFilm(myfilm);
                     return Index();
              }

              public ActionResult DeleteFilm(Film item)
              {
                     // delete film
                     Film.DeleteFilm(item.ID);
                     return Index();
              }

              [HttpGet]
              public ActionResult EditFilm(Film item)
              {
                     return View("EditFilm", item);
              }

              [HttpPost]
              public ActionResult UpdateFilmInDatabase(Film item)
              {
                     // list films
                     Film.EditFilm(item);
                     return Index();
              }
       }
}


Route
  C#     App_Start\RouteConfig.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;

namespace MyLibraryMVC
{
       public class RouteConfig
       {
              public static void RegisterRoutes(RouteCollection routes)
              {
                     routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

                     routes.MapRoute(
                            name: "Default",
                            url: "{controller}/{action}/{id}",
                            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
                     );
              }
       }
}
Ваши Отзывы ... комментарии...
   
Вашe имя:
Ваш комментарий (www ссылки может добавлять только залогиненный пользователь)

Картинки

Объявления
  Языки программирования и другое  

Тема: 'HTML'

Тема: 'JS'

Тема: 'Графика, таблицы, диалоги и многое другое для WEB страниц'

Тема: 'JavaScript технологии'

Тема: 'SQL база данных'

Тема: 'Работа с базой данных на C#'

Тема: 'Microsoft C# и .NET'

Тема: 'Git'

Тема: 'Разработка игр'

Тема: 'Mono (виртуальная машина для C# в Unix)'

Тема: 'WEB сайт'

Тема: 'WEB сервер'

Тема: 'bat файлы'

Тема: 'Операционные Системы'

Тема: 'Программы для разработки (интегрированные среды для разработки IDE)'

Тема: 'Компьютерная платформа (процессор)'

Тема: 'Распознавание картинки в текст'

Тема: 'Рисуем картинки, видео'

Тема: 'PDF to word, images'

Тема: 'Регулярные выражения'

Тема: 'Резюме (как найти работу)'
Концерты, шоу, спектакли, пьесы, выставки в Беларуси ...
Выставка произведений Л.Д.Щемелёва
г. Минск Городская художественная галерея Л.Щемелева
Сезон Детской железной дороги
с 30 апреля
до 30 сентября 2018
г. Минск
Группа "МУМИЙ ТРОЛЛЬ"
18 июля 2018
г. Витебск Витебский летний амфитеатр
Спектакль "Зойкина квартира"
с 12 июля
до 21 августа 2018
г. Минск Театр им. Максима Горького
Балет "Лебединое озеро"
с 26 июня
до 23 сентября 2018
г. Минск Большой театр оперы и балета
Выставка живых экзотических бабочек
с 24 марта
до 30 сентября 2018
г. Минск Художественная галерея Минского областного центра народного творчества
Спектакль "Ромео и Джульетта" Продолжение
26 июля 2018
г. Минск Арт пространство "ОК 16"
Спектакль "Вероника решает умереть"
18 июля 2018
г. Минск Дом Литератора
Всё лучшее в Юбилейной программе Виктору Шендеровичу 60!
28 октября 2018
г. Минск Концертный Зал "Минск"
  Спортивные занятия  
Аквааэробика
г. Минск
Спортивный комплекс "Лазурный"
(улица Козлова,17а)
Занятия в тренажерном зале
г. Речица
Спортивный комплекс "Гармония"
(улица Советская, 38)
Обучение плаванию (дети, взрослые)
г. Минск
Физкультурно-оздоровительный комплекс "Мандарин"
(улица Герасименко, 51)
Занятия по аэробике, пилатэс
г. Минск
Дворец культуры железнодорожников
(ул. Чкалова, 7)
Плавание в бассейне, сауна
г. Минск
Спортивный комплекс "Лазурный"
(улица Козлова,17а)
Занятия в тренажерном зале
Фитнес-центр "Адреналин"
г. Минск
Торговый центр "Европа"
(улица Сурганова, 57Б)
Фитнес (Пилатес, Аэробика, Стретчинг, Фитнес мама, гимнастика для детей и другое)
г. Минск
Физкультурно-оздоровительный комплекс "Мандарин"
(улица Герасименко, 51)
Рассказы про отдых в Беларуси
Купание в аквапарке "Фристайл"
16 августа 2016
Беларусь
Рассказы о Путешествиях
Отдых зимой в Объединенных Арабских Эмиратах
10 января 2015
Объединенные Арабские Эмираты
Объявление
Анонс! Цирк-Шапито "Sirius" а/г Колодищи с 19 по 22 июля 2018  
Комментариев 90
гость: 14 июля 2018 +++
Анонс! Славянский Базар 2018  
г. Витебск с 9 по 18 июля 2018
Комментариев 6
23 июня 2016 В прошлом году было великолепно! Едем снова!
Объявления
Компании, офисы
EPAM Systems
г. Гродно

Концерты, выставки
Спортивные занятия
Детские центры
Кино
Книги
Бесплатные объявления
Праздники
Скидки в магазинах Минска
Домашние животные
Программирование и технологии
Игра
Путешествия
Форум (обсуждение)
vsedetkam.by для детей
Архив Евровидений

Ваши вопросы, предложения присылайте по почте: info@dream-land.by
Яндекс.Метрика