Visual Studio 201о

Язык HTML был разработан Тимом Бернерс-Ли во время его работы в CERN и распространен браузером Mosaic, разработанным в NCSA. В

Visual Studio 201о

Курсовой проект

Компьютеры, программирование

Другие курсовые по предмету

Компьютеры, программирование

Сдать работу со 100% гаранией
тирования и разработки на основе тестирования. Все основные контракты платформы MVC основаны на интерфейсе и подлежат тестированию с помощью макетов объекта, которые имитируют поведение реальных объектов приложения. Приложение можно подвергать модульному тестированию без запуска контроллеров в процессе ASP.NET, что ускоряет тестирование и делает его более гибким. Для тестирования возможно использование любой платформы модульного тестирования, совместимой с .NET Framework.

·Расширяемая и дополняемая платформа. Компоненты платформы ASP.NET MVC можно легко заменить или настроить. Разработчик может подключать собственный механизм представлений, политику маршрутизации URL-адресов, сериализацию параметров методов действий и другие компоненты. Платформа ASP.NET MVC также поддерживает использование моделей контейнера внедрения зависимости (DI) и инверсии элемента управления (IOC). Модель внедрения зависимости позволяет внедрять объекты в класс, а не ожидать создания объекта самим классом. Модель инверсии элемента управления указывает на то, что если один объект требует другой объект, то первые объекты должны получить второй объект из внешнего источника (например, из файла конфигурации). Это облегчает тестирование.

·Расширенная поддержка маршрутизации ASP.NET. Этот мощный компонент сопоставления URL-адресов позволяет создавать приложения с понятными URL-адресами, которые можно использовать в поиске. URL-адреса не должны содержать расширения имен файлов и предназначены для поддержки шаблонов именования URL-адресов, обеспечивающих адресацию, оптимизированную для поисковых систем (SEO) и для передачи репрезентативного состояния (REST).

·),%20%d0%b4%d0%b5%d0%ba%d0%bb%d0%b0%d1%80%d0%b0%d1%82%d0%b8%d0%b2%d0%bd%d1%8b%d0%b5%20%d1%81%d0%b5%d1%80%d0%b2%d0%b5%d1%80%d0%bd%d1%8b%d0%b5%20%d1%8d%d0%bb%d0%b5%d0%bc%d0%b5%d0%bd%d1%82%d1%8b%20%d1%83%d0%bf%d1%80%d0%b0%d0%b2%d0%bb%d0%b5%d0%bd%d0%b8%d1%8f,%20%d1%88%d0%b0%d0%b1%d0%bb%d0%be%d0%bd%d1%8b,%20%d0%bf%d1%80%d0%b8%d0%b2%d1%8f%d0%b7%d0%ba%d1%83%20%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85,%20%d0%bb%d0%be%d0%ba%d0%b0%d0%bb%d0%b8%d0%b7%d0%b0%d1%86%d0%b8%d1%8e%20%d0%b8%20%d1%82.%20%d0%b4.">Поддержка использования разметки в существующих файлах страниц ASP.NET (ASPX), элементов управления (ASCX) и главных страниц (MASTER) как шаблонов представлений. Вместе с платформой ASP.NET MVC можно использовать существующие функции ASP.NET, например вложенные главные страницы, встроенные выражения (<%= %>), декларативные серверные элементы управления, шаблоны, привязку данных, локализацию и т. д.

·Поддержка существующих функций ASP.NET. ASP.NET MVC позволяет использовать такие функции, как проверка подлинности с помощью форм и Windows, проверка подлинности по URL-адресу, членство и роли, кэширование вывода и данных, управление состоянием сеанса и профиля, наблюдение за работоспособностью, система конфигурации и архитектура поставщика.

приложение платформа visual studio

2. Расчетная часть

 

.1 Процесс создания приложения

Рис. Схема приложения

 

.1.1 Контроллеры

using System;

using System.Collections.Generic;System.IO;System.Linq;System.Web;System.Web.Mvc;System.Text;System.Security.Cryptography;wIN_test_1_.Models;wIN_test_1_.Attributes;wIN_test_1_.Controllers

{class AuthController : Controller

{WINEntities Dc = new WINEntities();ActionResult Index()

{View("Login");

}

[HttpGet]ActionResult Register()

{View();

}

[HttpPost]ActionResult Register(string login, string passwd, string name, string logo)

x.login==login)!=null)">{(Dc.Users.SingleOrDefault(x=>x.login==login)!=null)

{Content("Упс! Ошибочка вышла - попробуй ввести другие аутентификационные данные...");

}randomizer = new Random();saltBuilder = new StringBuilder(randomizer.Next(4, 14));(int i = 0; i < saltBuilder.Capacity; i++)

{.Next();.Append(((char) randomizer.Next(0x21,0x7e)));

}salt = saltBuilder.ToString();

authData = Encoding.UTF8.GetBytes(salt + passwd + login);hasher = new SHA512Managed();hash = Convert.ToBase64String(hasher.ComputeHash(authData));user = new User()

{= Guid.NewGuid(),=salt,= login,= hash,= name

};.Users.AddObject(user);.SaveChanges();(user.id, Guid.NewGuid());(var ctx = System.IO.File.CreateText(HttpContext.Server.MapPath("~/app_data/logos/")+user.id.ToString()))

{.Write(logo);

}Json(new UserModel(user));

}

ActionResult Login()

{View();

}

 

[HttpPost]ActionResult Login(string login, string passwd)

%20x.login%20==%20login);(user%20!=%20null)">{user = Dc.Users.SingleOrDefault(x => x.login == login);(user != null)

{authData = Encoding.UTF8.GetBytes(user.salt + passwd + login);hasher = new SHA512Managed();hash = Convert.ToBase64String(hasher.ComputeHash(authData));

(hash == user.password)

{js = Json(new UserModel(user));ses = new Session() {uid = user.id, id=Guid.NewGuid()};(user.id, ses.id);js;

}

}Content("fail");

}

[Authorized]ActionResult Logout()

%20x.id%20==%20sesid%20&&%20x.uid%20==%20uid);(ses%20!=%20null)">{sesid = Guid.Parse(System.Web.HttpContext.Current.Request.Cookies["sesid"].Value);uid = Guid.Parse(System.Web.HttpContext.Current.Request.Cookies["uid"].Value);ses = Dc.Sessions.SingleOrDefault(x => x.id == sesid && x.uid == uid);(ses != null)

{(Guid.Empty, Guid.Empty);RedirectToAction("Login");

}Content("fail");

}int SetSession(Guid uid, Guid sesid)

{dc = new WINEntities();(sesid==Guid.Empty)

x.id==sesid);.Sessions.DeleteObject(s);.SaveChanges();.Response.Clear();0;">{= Guid.Parse(System.Web.HttpContext.Current.Request.Cookies["sesid"].Value);s = dc.Sessions.Single(x =>x.id==sesid);.Sessions.DeleteObject(s);.SaveChanges();.Response.Clear();0;

}.Web.HttpContext.Current.Response.Cookies["uid"].Value=uid.ToString();.Web.HttpContext.Current.Response.Cookies["sesid"].Value = sesid.ToString();ses = new Session {id = sesid, uid = uid};.Sessions.AddObject(ses);saveChanges = dc.SaveChanges();saveChanges;

}

 

}

}

System;System.Collections.Generic;System.Drawing;System.Drawing.Imaging;System.Linq;System.Web;System.Web.Mvc;wIN_test_1_.Attributes;wIN_test_1_.Models;System.IO;

wIN_test_1_.Controllers

{class HomeController : Controller

{

[Authorized]ActionResult Index()

{View();

}ActionResult About()

{View();

}

[HttpPost]

[Authorized]ActionResult ChangeLogo(string data)

{uid = HttpContext.Request.Cookies.Get("uid").Value;(var fctx = System.IO.File.CreateText(HttpContext.Server.MapPath("~/app_data/logos/") + uid))

{.Write(data);

}Content("ok");

}

[HttpPost]ActionResult TakeImageList(Guid location, int offset, int count)

%2015)%20count%20=%2015;entities%20=%20(from%20image%20in%20ctx.Images%20where%20image.location%20==%20location%20orderby%20image.date%20select%20image).Skip(offset).Take(count).ToList();result%20=%20new%20List<ImageMiniatureModel>();(var%20entity%20in%20entities)">{= offset * count;ctx = new WINEntities();cnt = ctx.Images.LongCount();(cnt < 15) count = (int)cnt;if (count > 15) count = 15;entities = (from image in ctx.Images where image.location == location orderby image.date select image).Skip(offset).Take(count).ToList();result = new List<ImageMiniatureModel>();(var entity in entities)

{.Add(new ImageMiniatureModel(entity));

}Json(result);

}

[HttpPost]ActionResult GetImage(Guid id)

{(var ctx = new WINEntities())

%20x.id%20==%20id);Json(new%20ImageModel(image));">{image = ctx.Images.SingleOrDefault(x => x.id == id);Json(new ImageModel(image));

}

}

[HttpPost]ActionResult SaveImage(Guid id, Guid uid, Guid location, string data)

{(data.IndexOf("data:image/png;base64,") != 0)Content("Замечтался, петушок?)");(var ctx = new WINEntities())

{

image = null;(uid == Guid.Empty)

{= Guid.Parse(HttpContext.Request["uid"]);

}(location == Guid.Empty)

{= uid;

}(id == Guid.Empty)

{= Guid.NewGuid();= new Image()

{= id,= uid,= location,= DateTime.Now

};.Images.AddObject(image);

}

{= (from img in ctx.Images where img.id == id select img).FirstOrDefault() ?? new Image() { id = Guid.NewGuid(), uid = uid, location = uid };(image.uid != uid)

{Content("Замечтался, петушок?)");

}

}(var file = System.IO.File.CreateText(HttpContext.Request.MapPath("~/app_data/images/") + image.id))

{.Write(data);

}[] min = Convert.FromBase64String(data.Replace("data:image/png;base64,", ""));(MemoryStream ms = new MemoryStream(min))

{bmp = new System.Drawing.Bitmap(ms);newX = 64;newY = bmp.VerticalResolution * newX / bmp.HorizontalResolution;.SetResolution(newX, newY);.Flush();(var memory = new MemoryStream())

%20x.MimeType%20==%20"image/png"),%20enc);(fctx%20=.IO.File.CreateText(HttpContext.Request.MapPath("~/app_data/images/")%20+%20image.id%20+">{enc = new EncoderParameters(1);.Param[0] = new EncoderParameter(Encoder.Compression, (long)EncoderValue.CompressionLZW);.Save(memory,.GetImageEncoders().SingleOrDefault(x => x.MimeType == "image/png"), enc);(fctx =.IO.File.CreateText(HttpC

Похожие работы

<< < 1 2 3 4 5 6 7 > >>