Visual Studio 201о

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    738,9 Кб
  • Опубликовано:
    2012-05-24
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Visual Studio 201о

Введение

Двадцать первый век заслуженно называют эпохой апогея информационных технологий. Посмотрите вокруг, наш и до того тесный мир пестрит различными техническими новинками, которыми пользуется и стар и млад. На наш взгляд, современные изобретения являются полезными для общества, которое можно сравнить с огромным муравейником, где каждый выполняет свою работу, и, фактически не имеет время на полноценный отдых. Можем позволить себе провести параллель между современной жизнью и детской каруселью, которая с каждой минутой только набирает свою скорость. Как нам кажется, фраза ,,Компьютер-друг человека'' очень точно характеризует наши серые будни. Действительно, что бы мы не делали, он всегда готов прийти нам на помощь, взять на себя часть нашей работы. Что произойдет, если на сутки с лица земли исчезнут все компьютеры и компьютерные планшеты? Ответ прост, нарушится полноценная деятельность предприятий, международных корпораций, фондов, банков и т.д. На наш взгляд, данное происшествие будет сравнимо с деятельностью разрушительного урагана, последствия которого придется ликвидировать длительное время. Нельзя и не упомянуть тот факт, что всемирная паутина нередко заменяет нам живых людей, даже уместнее сказать заполняет нашу душевную пустоту, вызванную их отсутствием. И в этом огромная заслуга социальных сетей.

Стук клавиш для некоторых людей - единственная возможность заставить сердце биться с бешеной силой, ведь не все могут найти свою вторую половинку в реальной жизни. Мы считаем ошибочным суждение, что виртуальная жизнь вредна для человека и хотим привести несколько аргументов в свою защиту.

Во-первых хотелось бы сказать про людей-инвалидов, чья жизнь в корне отличается от жизни здорового человека. Зачастую эти люди не имеют возможности покинуть свою квартиру, свои крошечный мир, для них социальная сеть, без преувеличения, спасение, окунувшись с головой в общение они на время забывают о своих проблемах, получают поддержку от других людей, находят друзей.

Во-вторых, социальные сети нередко объединяют людей разного пола, возраста, национальности, что, на наш взгляд, очень важно в наше время, когда как революции, войны, восстания так и хотят разрушить нашу мирную жизнь, нашу хрупкую птицу счастья.

Также благодаря социальным сетям многие происшествия получают широкий общественный резонанс, каждый из нас может принять участие в обсуждении какого-либо острого вопроса, доказать свою правоту. На протяжении всего существования жизни на земле, свобода являлась главной ценностью человечества, ради нее люди были готовы проливать кровь, склонять головы, уничтожать целые народы. В социальных сетях мы также обретаем это ни с чем не сравнимое право. Оценив популярность социальных сетей, мы пришли к выводу, что необходимо создать свою собственную социальную сеть, которая, как нам кажется, сможет занять достойное место, среди других информационных разработок. Наша главная цель-создание особенного мира, в которой каждый человек, в не зависимости от предпочтений и вкусов, может почувствовать себя как дома, ощутить вкус истинной свободы. Неповторимый дизайн, простота использования - лишь некоторые козыри моего изобретения. Мы искренне надеюсь, что наша социальная сеть изменит жизнь каждого из нас, ибо всё новое невольно изменяет привычный порядок вещей.

1. Теоретическая часть

.1 Аспекты изучаемой технологии

(Hyper Text Markup Language - «язык разметки гипертекста») - стандартный язык разметки документов во Всемирной паутине. Большинство веб-страниц создаются при помощи языка HTML (или XHTML). Язык HTML интерпретируется браузерами и отображается в виде документа, в удобной для человека форме.

История HTML

Язык HTML был разработан Тимом Бернерс-Ли во время его работы в CERN и распространен браузером Mosaic, разработанным в NCSA. В 1990-х годах он добился особенных успехов благодаря быстрому росту Web. В это время HTML был расширен и дополнен. В Web очень важно использование одних и тех же соглашений HTML авторами Web-страниц и производителями. Это явилось причиной совместной работы над спецификациями языка HTML. HTML 2.0 был разработан под эгидой Internet Engineering Task Force (IETF) для упорядочения общепринятых положений в конце 1994 года. HTML+ (1993) и HTML 3.0 (1995) - это более богатые версии языка HTML. Несмотря на то, что в обычных дискуссиях согласие никогда не было достигнуто, эти черновики привели к принятию ряда новых свойств. Усилия Рабочей группы World Wide Web Consortium по HTML в упорядочении общепринятых положений в 1996 привели к версии HTML 3.2 (январь 1997). Большинство людей признают, что документы HTML должны работать в различных браузерах и на разных платформах. Достижение совместимости снижает расходы авторов, поскольку они могут разрабатывать только одну версию документа. В противном случае возникает еще больший риск, что Web будет представлять собой смесь личных несовместимых форматов, что в конечном счете приведет к снижению коммерческого потенциала Web для всех участников. В каждой версии HTML предпринималась попытка отразить все большее число соглашений между работниками и пользователями этой индустрии, чтобы усилия авторов не были потрачены впустую, а их документы не стали бы нечитаемыми в короткий срок. Язык HTML разрабатывался с той точки зрения, что все типы устройств должны иметь возможность использовать информацию в Web: персональные компьютеры с графическими дисплеями с различным разрешением и числом цветов, сотовые телефоны, переносные устройства, устройства для вывода и ввода речи, компьютеры с высокой и низкой частотой и т.д.

Браузеры

Текстовые документы, содержащие разметку на языке HTML (такие документы традиционно имеют расширение .html или .htm), обрабатываются специальными приложениями, которые отображают документ в его форматированном виде. Такие приложения, называемые «браузерами» или «интернет-обозревателями», обычно предоставляют пользователю удобный интерфейс для запроса веб-страниц, их просмотра (и вывода на иные внешние устройства) и, при необходимости, отправки введённых пользователем данных на сервер. Наиболее популярными на сегодняшний день браузерами являются Internet Explorer, Mozilla Firefox, Apple Safari, Googlе Chrome и Opera.

Версии HTML2.0

сентября 1995 года2.0 одобренный как стандарт 22 сентября 1995 года. Официальной спецификации HTML 1.0 не существует. До 1995 года существовало множество неофициальных стандартов HTML. Чтобы стандартная версия отличалась от них, ей сразу присвоили второй номер.

HTML 3.2

января 1997 года

Стандарт HTML 3.2 является спецификацией языка разметки гипертекста, предложенной организацией W3C и разработанной в начале 1996 года в кооперации с такими поставщиками, как IBM, Microsoft, Netscape Communication Corporation, Novell, SoftQuad, Spyglass, и Sun Microsystems. Версия 3.2 языка HTML дополнена такими широко распространенными элементами, как таблицы, апплеты и обтекание текстом изображений. При этом обеспечивается полная обратная совместимость с ныне существующим стандартом HTML 2.0.C совместно с упомянутыми фирмами продолжает работу над расширением возможностей элементов языка HTML, таких как feagures, объекты мультимедиа, скрипты, типы стилей, разметка (layout), формы, математические символы, и над интернационализацией языка. W3C планирует включить результаты этой работы в следующие версии языка HTML.

Документы в языке HTML 3.2 начинаются с декларации <!DOCTYPE>, затем следует элемент HTML.

HTML 4.0

декабря 1997 года

Данная спецификация определяет HyperText Markup Language (Язык разметки гипертекстов - HTML) версии 4.0 - язык, который используется для публикаций в World Wide Web. Кроме текстовых, мультимедийных возможностей и гиперссылок, присутствующих в предыдущих версиях языка HTML, HTML 4.0 поддерживает новые мультимедийные возможности, скрипты, таблицы стилей, улучшенную печать и более доступные людям с физическими недостатками документы.

В версии HTML 4.0 также успешно реализована интернационализация документов, целью которой является сделать Паутину действительно всемирной.

HTML 4.0 - это приложение SGML, соответствующее Международному стандарту ISO 8879 -- Standard Generalized Markup Language.

HTML 4.01

декабря 1999 года

Эта спецификация определяет HyperText Markup Language (HTML) - гипертекстовый язык разметки, язык World Wide Web. Здесь определён HTML 4.01, являющийся субверсией HTML 4. В дополнение к возможностям работы с текстом, мультимедиа и гипертекстом предыдущих версий HTML (HTML 3.2 ) и HTML 2.0 ), HTML 4 поддерживает большее количество опций мультимедиа, языков скриптов, каскадных таблиц стилей, лучшие возможности печати и большую доступность документов для людей с ограниченными возможностями. HTML 4 также является большим шагом в направлении интернационализации документов с целью сделать Web действительно World Wide (всемирным).

HTML 5

HTML5 - язык для структурирования и представления содержимого для всемирной паутины, а также основная технология, используемая в Интернете. Это пятая версия HTML-стандарта (изначально созданного в 1990 году и последней версией которого являлся HTML4, стандартизированный в 1997 году) и находится в стадии разработки по состоянию на апрель 2012 года. Основной её целью является улучшить язык, поддерживающий работу с новейшими мультимедийными приложениями, при этом сохраняется лёгкость чтения кода для человека и ясность исполнения для компьютеров и приспособлений (веб-браузеры, синтаксические анализаторы и т. д.). HTML5 включает в себя HTML 4 и javascript<#"564381.files/image001.gif">

Рис. 1 Схема структуры MVC

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

В состав платформы MVC входят следующие компоненты.

·        Модели. Объекты моделей являются частями приложения, реализующими логику для домена данных приложения. Объекты моделей часто получают и сохраняют состояние модели в базе данных. Например, объект Product может получать информацию из базы данных, работать с ней, а затем записывать обновленные данные в таблицу Products базы данных SQL Server.

В небольших приложениях эта модель подразумевает концептуальное, а не физическое разделение. Например, если приложение только считывает набор данных и отправляет его в представление, то физический слой модели и связанных классов отсутствует. В этом случае набор данных принимает роль объекта модели.

·        Представления. Представления служат для отображения пользовательского интерфейса приложения. Пользовательский интерфейс обычно создается на основе данных модели. Примером может служить представление для редактирования таблицы Products, которое содержит текстовые поля, раскрывающиеся списки и флажки, значения которых основаны на текущем состоянии объекта Product.

·        Контроллеры. Контроллеры осуществляют взаимодействие с пользователем, работу с моделью, а также выбор представления, отображающего пользовательский интерфейс. В приложении MVC представления только отображают данные, а контроллер обрабатывает вводимые данные и отвечает на действия пользователя. Например, контроллер может обрабатывать строковые значения запроса и передавать их в модель, которая может использовать эти значения для отправки запроса в базу данных.

Шаблон MVC позволяет создавать приложения, различные аспекты которых (логика ввода, бизнес-логика и логика интерфейса) разделены, но достаточно тесно взаимодействуют друг с другом. Эта схема указывает расположение каждого вида логики в приложении. Пользовательский интерфейс располагается в представлении. Логика ввода располагается в контроллере. Бизнес-логика находится в модели. Это разделение позволяет работать со сложными структурами при создании приложения, так как обеспечивает одновременную реализацию только одного аспекта. Например, разработчик может сконцентрироваться на создании представления отдельно от бизнес-логики.

Связь между основными компонентами приложения MVC также облегчает параллельную разработку. Например, один разработчик может создавать представление, другой - логику контроллера, а третий - бизнес-логику модели.

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

Следует внимательно продумать вопрос о создании веб-приложения на основе платформы ASP.NET MVC или на основе модели веб-форм ASP.NET. Платформа MVC не заменяет собой модель веб-форм. Обе модели можно использовать для веб-приложений. (при наличии существующих приложений на основе веб-форм они будут продолжать работу в нормальном режиме).

Перед использованием платформы MVC или модели веб-форм для определенного веб-сайта следует взвесить все преимущества каждого из подходов

Платформа ASP.NET MVC имеет следующие преимущества.

·    Она облегчает управление сложными структурами путем разделения приложения на модель, представление и контроллер.

·        Она не использует состояние просмотра и серверные формы. Это делает платформу MVC идеальной для разработчиков, которым необходим полный контроль над поведением приложения.

·        Она использует схему основного контроллера, при которой запросы веб-приложения обрабатываются через один контроллер. Это позволяет создавать приложения, поддерживающие расширенную инфраструктуру маршрутизации. Дополнительные сведения см. в разделе Front Controller.

·        Она обеспечивает расширенную поддержку разработки на основе тестирования.

·        Она хорошо подходит для веб-приложений, поддерживаемых крупными коллективами разработчиков, а также веб-разработчикам, которым необходим высокий уровень контроля над поведением приложения.

Платформа ASP.NET MVC предоставляет следующие возможности.

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

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

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

·        Поддержка использования разметки в существующих файлах страниц 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)

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

}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)

{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()

{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)

{= 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)

{= 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())

{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())

{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(HttpContext.Request.MapPath("~/app_data/images/") + image.id +

".min"))

{.Write("data:image/png;base64," + Convert.ToBase64String(memory.GetBuffer()));

}

}

}.SaveChanges();js = Json(new ImageModel(image) { Data = "" });js;

}

}

[HttpGet]ActionResult FriendList()

{View();

}

[HttpPost]ActionResult FriendList(int offset, int count)

{(var ctx = new WINEntities())

{cnt = ctx.Users.LongCount();(cnt<15)

{(offset > cnt) offset = 0;= (int)cnt - offset;

}if ((offset + count) > cnt)

{Content("Упс, ошибочка...");

}users = (from user in ctx.Users orderby user.rate select user).Skip(offset).Take(count).ToList();result = new List<UserModel>();(var user in users)

{.Add(new UserModel(user));

}Json(result);

}

}

}

}

System;System.Collections.Generic;System.Linq;System.Web;System.Web.Mvc;System.Web.Routing;wIN_test_1_.Models;wIN_test_1_.Controllers

{class UserController : Controller

{

//

// GET: /User/ActionResult Index()

{RedirectToAction("Index", "Home");

}

[HttpGet]ActionResult Index(Guid uid)

{.uid = uid;View();

}

[HttpPost]ActionResult GetInfo(Guid uid)

{ctx = new WINEntities();Json(new UserModel(ctx.Users.SingleOrDefault(x => x.id == uid)));

}

}

}

.1.2 Представления

@{.Title = "Login";

}

<style type="text/css">

#authpanel

{: absolute;color: #99CCFF;: 2em 25% 3% 25%;: 0.5em;: 20%;: 35%;: 15%;: 28%;: 40%;

moz-border-radius: 5px;

khtml-border-radius: 10px;width: 300px;

}

#welcome

{: absolute;: 28%;: 20%;: left;: 35%; /*height:35%;*/radius:6px;

moz-border-radius:5px;

khtml-border-radius:10px;width: 300px;

}

.authhelper

{: 100%;: 1.5em;

}

.authhelper:hover

{: 1.5px;color: Black;

}

{: Black;weight: bold;family: Segoe UI;

}

#submit:hover

{: 2px solid Black;

}

*

{radius: 4px;

#submit

{: 1px solid Black;align: center;

}

#menu

{: 11px Arial, Helvetica, sans-serif;image: url('../../Content/bc_bg.png');repeat: repeat-x;: 30px;height: 30px;: #9b9b9b;: solid 1px #cacaca;: 100%;: hidden;: 0px;: 0px;

}

#menu li

{style-type: none;: left;left: 10px;

}

#menu a

{: 30px;: block;image: url('../../Content/bc_separator.png');repeat: no-repeat;position: right;right: 15px;decoration: none;: #454545;

}

.home

{: none;: 8px 0px;

}

#menu a:hover

{: gray;

}

</style>

<ul id="menu">

<li><a><img src="../../Content/lolwin_logo.png" alt="Lolw.in">

</ul>

<img id="welcome" src="../../Content/welcome.png" />

<p id="notify"></p>

<div id="authpanel">

<p>Введите логин</p>

<input>Введите пароль</p>

<input>Нажмите чтобы залогиниться</p>

<div>Поехали!</div>

@Html.ActionLink("Нет странички? Заведи!", "Register")

</div>

<script type="text/javascript">

$('#submit').live('click', function () {login = document.getElementById('login');passwd = document.getElementById('passwd');

//alert('{"login":"' + $(login).value + '", "password":"' + SHA256(passwd.value).toString() + '"}');

$.ajax({: 'POST',: 'Login',: 'application/json',: 'json',: '{"login":"' + login.value + '", "passwd":"' + SHA256(passwd.value).toString() + '"}',: function (data) {.location = window.location.href="/";

}

});

});

</script>

@{.Title = "Register";

}

<style type="text/css">

#authpanel

{: absolute;color: #99CCFF;: 2em 25% 3% 25%;: 0.5em;: 20%;: 35%;: 20%;: 23%;: 40%;radius:6px;

moz-border-radius:5px;

khtml-border-radius:10px;width: 300px;

}

#welcome

{: absolute;: 28%;: 20%;: left;: 35%; /*height:35%;*/radius:6px;

moz-border-radius:5px;

khtml-border-radius:10px;width: 300px;

}

.authhelper

{: 100%;: 1.5em;

}

.authhelper:hover

{: 1.5px;color: Black;

}

{: Black;weight: bold;family: Segoe UI;

}

#submit:hover

{: 2px solid Black;

}

*

{radius: 4px;

}

#submit

{: 1px solid Black;align: center;

}

#menu

}

#menu li

{style-type: none;: left;left: 10px;

}

#menu a

{: 30px;: block;image: url('../../Content/bc_separator.png');repeat: no-repeat;position: right;right: 15px;decoration: none;: #454545;

}

.home

{: none;: 8px 0px;

}

#menu a:hover

{: gray;

}

</style>

<ul id="menu">

<li><a>

<img src="../../Content/lolwin_logo.png" alt="Lolw.in">

</ul>

<br />

<img id="welcome" src="../../Content/welcome.png" />

<div id="authpanel"><p>Введите ваше имя</p>

<p id='notify'></p>

<input>

<p>Введите желаемое имя</p>

<input>

<p id="passvalid" />

<p>Введите пароль</p>

<input>

<p>Нажмите для регистрации</p>

<div>Поехали!</div>

@Html.ActionLink("Уже есть аккаунт? Поехали!", "Login");

</div>

<script type="text/javascript">passvalid = document.getElementById("passvalid");

$('#password').live("change",function () {($(this).attr('value').length < 6) {

passvalid.innerHTML = "Слишком короткий пароль!";

} else {.innerHTML = "Слишком длинный пароль!";

}

});

$('#submit').live('click', function () {login = document.getElementById('login');passwd = document.getElementById('passwd');name = document.getElementById('name');

$.ajax({: "Register",: "POST",: "application/json",: "json",: "{'login':'" + login.value + "','name':'" + name.value + "','passwd':'" + SHA256(passwd.value).toString() + "', 'logo':''}",: function (data) {.location = window.location.href = "/";

}

});

});

</script>

@{= "";

}

<!DOCTYPE html>

<html>

<style>

#menu

{: 11px Arial, Helvetica, sans-serif;image: url('../../Content/bc_bg.png');repeat: repeat-x;: 30px;height: 30px;: #9b9b9b;: solid 1px #cacaca;: 100%;: hidden;: 0px;: 0px;

}

#menu li

{style-type: none;: left;left: 10px;

}

#menu a

{: 30px;: block;image: url('../../Content/bc_separator.png');repeat: no-repeat;position: right;right: 15px;decoration: none;: #454545;

}

.home

{: none;: 8px 0px;

}

#menu a:hover

{: gray;

}

</style>

<head>

<meta charset="utf-8" />

<title>Главная страница</title>

<link href="@Url.Content("~/Content/style.css")" rel="stylesheet" type="text/css" />

<script src="@Url.Content("~/Scripts/jquery-1.5.1.js")" type="text/javascript"></script>

<script type="text/javascript" src="@Url.Content("~/Scripts/sha256.js")"></script>

<script src="@Url.Content("~/Scripts/nav.js")" type="text/javascript"></script>

<script src="@Url.Content("~/Scripts/draw.js")" type="text/javascript"></script>

<script src="../../Scripts/jcarousellite.js" type="text/javascript"></script>

</head>

<body>

<ul id="menu">

<li><a><img src="../../Content/lolwin_logo.png" alt="Lolw.in">

<li><a id="usermessage"> Добро пожаловать!</a></li>

<li>@Html.ActionLink("Местные","FriendList", "Home")</li>

<li><a>Разлогиниться</a></li>

<li><a id="blogo">На аву!</a></li>

</ul>

<div id="tools">

<br />

<br />

<div id="bnew">Новое"><img src="../../Content/image003.png" /></div>

<br />

<br />

<div id="bsend">Отправить"><img src="../../Content/image005.png" /></div>

</div>

<canvas id="view" width="600" height="400" onmousedown="mDown(event);" onmousemove="mMove(event);" onmouseup="mUp();">

<p>Чувак, нам дико жаль, но твой браузер не поддерживает всех функций нашего сервиса.<br />Мы очень извинияемся за это. <br />Ниже есть список поддерживаемых браузеров. <br />Просто выбери тот, который тебе нравится.</p>

<p>Поддерживаемые браузеры: <a href="#"564381.files/image003.gif">

Рис. Доступ к данным Entity Framework

Средства модель EDM (сущностная модель данных) могут сформировать класс, производный от ObjectContext, который представляет контейнер сущностей в концептуальной модели. Контекст объекта предоставляет средства для отслеживания изменений и управления идентификаторами, параллелизмом и связями. Этот класс представляет также доступ к методу SaveChanges, который записывает результаты вставки, обновления и удаления данных в источник данных. Подобно запросам, эти изменения производятся либо командами, автоматически сформированными системой, либо хранимыми процедурами, указанными разработчиком.

Поставщик EntityClient расширяет модель поставщика ADO.NET путем доступа к данным в терминах сущностей и связей концептуальной модели. Выполняет запросы на языке Entity SQL . Entity SQL представляет базовый язык запросов, с помощью которого EntityClient обменивается данными с базой данных. Приложение Entity Framework включает обновленный поставщик данных SqlClient, который поддерживает канонические деревья команд.

Наряду со средой выполнения Entity Framework , .NET Framework версия 4 включает генератор моделей EDM. Эта программа командной строки соединяется с источником данных и формирует файлы модели и сопоставления на основе сопоставления между сущностями и таблицами типа «один к одному». В этой программе используется также файл концептуальной модели (с расширением CSDL) для формирования файла уровня объектов, содержащего классы, которые представляют типы сущностей и контекст ObjectContext.Studio 2010 включает в себя обширный набор поддерживаемых средств для создания и обслуживания файлов моделей и сопоставлений в приложении Visual Studio. Конструктор модель EDM (сущностная модель данных) поддерживает создание усовершенствованных сценариев сопоставления (таких как наследование типа «одна таблица на тип» и «одна таблица на иерархию»), а также разделение сущностей, которые сопоставлены с несколькими таблицами.

Интерфейс пользователя

При переходе по ссылке www.lolw.in пользователь попадает на страницу входа.


Если у пользователя нет странички он может завести ее перейдя на страницу регистрации


После регистрации/входа пользователь попадает на свою страничку


Пользователь может просмотреть список всех пользователей


Актуальность выбранной темы

Задолго до того, как он стал источником коммерческой информации и мощной силой развлечения, которой и является сегодня, прежде, чем он был доступен для широкой публики, Интернет был сфокусирован на социальном взаимодействии. Первоначально компьютерная сеть во времена расцвета "Битлз" предполагалась как военно-ориентированная схема командования и управления. Но поскольку она расширилась, стало возможно создать огромный форум, чтобы обсуждать взаимно интересные темы, и, возможно, даже познакомиться с другими людьми или возобновить старые связи.

Актуальность нашей работы не подлежит сомнениям. Практически каждый из вас имеет аккаунт в той или иной социальной сети. Некоторые ежедневно заходят на свою страницу, некоторые - реже, но всё же равнодушных нет.

Социальные сети стали неотъемлемой частью нашей жизни. Мы заполняем анкеты, общаемся, выкладываем фотографии и музыку. В этом нет ничего плохого, если, конечно, не переходить границы. Ведь жизнь некоторых людей плавно перетекла на монитор компьютера. И это только начало. Ведь социальные сети - это достаточно молодая, неразвитая, но очень перспективная отрасль интернет-сообщества.

Заключение

С развитием технологий Web 2.0 социальные сети обрели осязаемую основу в виде порталов и веб-сервисов. Так, найдя на одном из таких сайтов совершенно незнакомого для себя человека, можно увидеть цепочку промежуточных знакомств, через которую вы с ним связаны. Победное шествие по Интернету социальные сети начали в 1995 году с американского портала Classmates.com («Одноклассники» являются его русским аналогом). Проект оказался весьма успешным, что в следующие несколько лет спровоцировало появление не одного десятка аналогичных сервисов. Но официальным началом бума социальных сетей принято считать 2003-2004 годы, когда были запущены LinkedIn, MySpace и Facebook. И если LinkedIn создавалась с целью установления/поддержания деловых контактов, то владельцы MySpace и Facebook сделали ставку в первую очередь на удовлетворение человеческой потребности в самовыражении. Ведь, в соответствии с пирамидой Маслоу, именно самовыражение является высшей потребностью человека, опережая даже признание и общение. Социальные сети стали своего рода Интернет-пристанищем, где каждый может найти техническую и социальную базу для создания своего виртуального «Я». При этом каждый пользователь получил возможность не просто общаться и творить, но и делиться плодами своего творчества с многомиллионной аудиторией той или иной социальной сети. Нам кажется, что и Lolw.in займет свое место среди социальных сетей и создаст свое, ни с чем не сравнимое сообщество.

Список литературы

1. http://ru.wikipedia.org

. http://msdn.microsoft.com

. http://ruseller.com/

. Русская редакция Вилдермьюс, Шон. Практическое использование ADO.NET. Доступ к данным в Internet

. Сеппа Д. Microsoft ADO .NET

. Рейли Д. Создание приложений Microsoft ASP.NET

. Просиз Дж. Программирование для Microsoft .NEТ

. Эспозито Д. Знакомство с MS ASP.NET 2.0

Похожие работы на - Visual Studio 201о

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!