Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Корректная обработка проблем аутентификации AJAX-запросов для приложений ASP.NET MVC

Время на прочтение5 мин
Количество просмотров14K
Для современных веб-приложений стало уже нормой использование AJAX при создании пользовательских интерфейсов. Однако, из-за этого, порой, возникают дополнительные сложности. Часто эти сложности связаны с аутентификацией и процессом обработки таких запросов на клиенте.
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии12

ASP.NET MVC client-side routing

Время на прочтение6 мин
Количество просмотров20K

Постановка проблемы


Система маршрутизации ASP.NET MVC избавляет разработчика от необходимости вручную поддерживать URL, используемые в приложении при помощи таблиц маршрутизации и url шаблонов. Таким образом, с программиста снимается задача по формированию URL вручную. Напротив, в его распоряжении оказывается богатый набор URL-хелперов. Это замечательно! Но все меняется, когда приходят они — AJAX-запросы.

Проблема заключается в том, что таблицы маршрутизации и механизм генерации URL являются частью серверной архитектуры asp.net mvc и недоступны из Javascript-файлов.
Читать дальше →
Всего голосов 24: ↑20 и ↓4+16
Комментарии6

Continuous Integration для самых маленьких

Время на прочтение12 мин
Количество просмотров115K

Вы все еще публикуете проект вручную? Тогда мы идем к вам


Под катом гайдлайн по внедрению CI для .NET проектов «с нуля», включающий:
  1. Автоматические ежедневные сборки
  2. Уведомления о проблемах
  3. Интеграцию с баг-трекером и системой контроля версий
  4. Версионирование продукта
  5. Версионирование базы данных
  6. Автоматизированные выкладки и бекапы

Читать дальше →
Всего голосов 48: ↑41 и ↓7+34
Комментарии46

Entity Framework Code First — индексация полей и полнотекстовый поиск

Время на прочтение7 мин
Количество просмотров30K
image

По роду моей деятельности, мне часто приходится делать различные небольшие проекты, в основном, это сайты написанные на ASP.NET MVC. В любом современном проекте присутствуют данные, а значит и база данных, а значит с ней нужно как то работать.
Если отбросить все дискуссии про «за и против», то спешу сообщить, что мой выбор пал на Entity Framework Code First. Во время разработки проекта, я уделяю внимание исключительно бизнес-логике и не трачу время на проектирование базы данных и прочие шаблонные действия. Неприятным сюрпризом при использовании такого подхода для меня стало отсутствие возможности «из коробки» у Entity Framework возможности строить индекс по полям, а так же пользоваться удобным и современным механизмом полнотекстового поиска.

После многочасового гугления, опробовав десятки различных методов со StackOverflow и прочих подобных сайтов, я пришел к выводу, что очевидного и простого решения проблемы нет, поэтому решил сделать собственное, об этом и пойдет речь далее.
Читать дальше →
Всего голосов 35: ↑32 и ↓3+29
Комментарии24

Подборка полезного для любителей Twitter Bootstrap

Время на прочтение1 мин
Количество просмотров83K
В подборке инструменты, плагины и другие полезности, облегчающие работу с Twitter Bootstrap. Предыдущая подборка.

Инструменты




Bootstraptor — подборка большого количества бесплатных и премиум тем, в том числе Starter Kit, на основе Bootstrap.
Читать дальше →
Всего голосов 109: ↑96 и ↓13+83
Комментарии21

Визуализация списков в отладчике Visual Studio или новое слово от «BugAid For Visual Studio»

Время на прочтение3 мин
Количество просмотров13K
Когда приходится просматривать элементы списка (массива) в отладчике Visual Studio, например, в окне QuickWatch часто сталкивашься с не удобством просмотра сложного (или длинного) списка данных. Тяжело увидеть, например, значения поля всех элементов списка.
Данный пост показывает несколько «встроенных» способов решения этой проблемы и возможности расширения BugAid.
мало букв, но достаточно картинок.

Читать дальше →
Всего голосов 43: ↑40 и ↓3+37
Комментарии13

Руководство по созданию собственной установочной сборки Windows 8

Время на прочтение16 мин
Количество просмотров57K
Введение

Сегодня я хочу рассказать о том, как создать собственный установочный образ Windows 8, со всеми установленными обновлениями, программами и пользовательскими настройками.

Использование такой сборки автоматизирует работу системного администратора по установке и настройки операционной системы. Особо актуально для тех случаев, когда необходимо установить однотипный набор программ на большое количество компьютеров. Так же полезно руководство будет и тем, кто просто хочет создать собственный установочный образ Windows 8 с набором используемых им программ и драйверов.

В данном руководстве затрагиваются вопросы подготовки такой сборки, создание загрузочной флешки и записи полученной сборки на флешку. Так же, полученный образ в дальнейшем, используя службы развертывания в сети (WDS), можно установить на любое количество компьютеров в корпоративной сети, но это тема уже следующего руководства.

Текст рассчитан на начинающих пользователей, поэтому объясняются и иллюстрируются порой простейшие вещи.

Читать далее...
Всего голосов 63: ↑45 и ↓18+27
Комментарии40

Интеграция AJAX в ASP.NET MVC 4

Время на прочтение6 мин
Количество просмотров80K
Наверное, уже не существует веб разработчика, который не слышал о Ajax. Microsoft в такой ситуации не может оставаться в стороне, с каждым релизом старается облегчить жизнь именно нам, ASP.NET MVC разработчикам. Но прежде чем я продолжу статью, немного отступлюсь от темы.

Когда я познакомился с MVC фреймворком, он был тогда только во второй версии и, столкнувшись с такими хелперами как @Ajax...., честно говоря, их реализация на стороне клиента меня не впечатлила. Нет, так нет, подумал я про себя, у меня есть jQuery со своим $.ajax, мне его за глаза. Вот и забыл я про них на несколько лет, к своему великому сожалению проморгав этот момент с третьим релизом. Что было, то было. Благо что взялся за ум и почитал две книги по MVC 4. Далее расскажу, как можно сократить написание строк кода благодаря хелперам, упомянутым мною выше.

Начну с того, что MVC может работать с двумя вариантами Ajax библиотек (конечно я же имею ввиду с коробки, не более того) — jQuery и Microsoft Ajax. Чтобы знать, для какого адаптера создавать разметку, существует настройка в web.config UnobtrusiveJavaScriptEnabled и соответствующее значение true (для работы с jQuery) и false (для работы с Microsoft Ajax). Если же нам необходимо поменять значение только для одного представления, можно воспользоваться методом — @{Html.EnableUnobtrusiveJavaScript(bool);}. Хочу обратить внимание, что данная настройка влияет и на формирование валидационных данных на стороне клиента.

Читать дальше →
Всего голосов 19: ↑15 и ↓4+11
Комментарии3

8 фактов, которые вы, возможно, не знали о C#

Время на прочтение7 мин
Количество просмотров195K
Вот несколько необычных фактов о языке C#, о которых знают лишь немногие разработчики.

1. Индексаторы могут использовать params параметры


Мы все знаем, как обычно выглядят индексаторы x = something["a"], а так же код необходимый для его реализации:

public string this[string key]
 {
   get { return internalDictionary[key]; }
 }

Но знали ли вы, что для доступа к элементам вы можете использовать params параметры x = something["a", "b", "c", "d"]?
Просто напишите ваш индексатор следующим образом:
Читать дальше →
Всего голосов 108: ↑88 и ↓20+68
Комментарии66

tFormer.js — велосипед для валидации форм

Время на прочтение4 мин
Количество просмотров23K

tFormer.js — empower your HTML forms



Предисловие:


Вам приходилось верстать формы? Приходилось писать скрипт для валидации этих форм на клиенте? Доводилось ли использовать уже существующие плагины/надстройки для валидации форм?
Мне приходилось, но я не был на 100% удовлетворен ни от подхода решения задачи в лоб (собственный скрипт валидации для каждого проекта под его формы), ни от того, как работают существующие сторонние плагины.

Проблема:


Основными проблемами собственных скриптов и плагинов всегда были — гибкость, удобство и простота.
Большое количество data-attributes, необходимых для конфигурации скриптов (как это в Parsley.js) делают и код менее читабельным, и никогда не помнишь, как все они пишутся. Не просто…
Не все плагины хорошо подходили под желаемые HTML-формы, а постоянно писать свои скрипты под разные формы не всегда удобно и разумно.

Задача:


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

Решение:


Решение вылилось в небольшой опенсорсный плагин, который получил название tFormer.js.
Подробности
Всего голосов 40: ↑35 и ↓5+30
Комментарии31

Создание и хранение резервных копий баз данных в MS SQL. Практические советы

Время на прочтение3 мин
Количество просмотров22K
По роду деятельности я немного администратор баз данных. Так или иначе мне приходится обслуживать несколько десятков БД.
Наткнувшись на статью, опубликованную недавно, посчитал нужным дополнить ее некоторыми практическими рекомендациями. То что затрагивалось в прошлой статье, в этой опускалось.

1. Размер резервной копии


Оценить размер резервной копии можно с помощью хранимой процедуры sp_spaceused

К примеру вот такой запрос:

USE your_database;
GO
EXEC sp_spaceused @updateusage = N'TRUE';
GO

выполняется намного быстрей резервного копирования, и позволяет более-менее точно оценить будущий размер бэкапа без сжатия.
Читать дальше →
Всего голосов 24: ↑22 и ↓2+20
Комментарии16

Запуск Windows под Linux KVM

Время на прочтение7 мин
Количество просмотров136K
Задача: запустить некоторое количество виртуальных машин с Windows на типовом Линукс-сервере.

Решение: любой современный Linux-дистрибутив, «родная» технология виртуализации KVM, Windows 2003 и настройки, описанные ниже.

Смотри также: вводную часть статьи по настройке KVM-контейнеров для FreeBSD.
Читать дальше →
Всего голосов 42: ↑28 и ↓14+14
Комментарии79

ASP.NET MVC. Урок 0. Вступление

Время на прочтение2 мин
Количество просмотров783K
Я пишу сайты на asp.net mvc. В этих 16 главах я хочу рассказать, как я это делаю. Это некий учебник-справочник всех тех знаний, которые я накопил в течение трех лет.

Почему именно asp.net mvc

ASP.NET MVC я люблю потому что:
  • Это .net. Я знаю .net и С#.
  • Это компилируемый код.
  • Это не ASP.NET WebForms, я работаю с html-кодом.
  • Используется MVC-паттерн.
  • Visual Studio – самое популярное средство разработки, в котором есть IntelliSense.
  • Отличные инструменты отладки.


Читать дальше →
Всего голосов 290: ↑215 и ↓75+140
Комментарии67

10 советов по начальной настройке среды Hyper-V

Время на прочтение4 мин
Количество просмотров45K

Как правило, установка среды Hyper-V не представляет собой ничего принципиально сложного и не занимает много времени. Однако, ее настройка может вызвать массу вопросов и точно потребует пристального внимания. Поэтому сегодня мы бы хотели дать несколько полезных советов по тому, как правильно выполнить настройку Hyper-V. Порядок их применения может быть произвольным.



Читать дальше →
Всего голосов 10: ↑8 и ↓2+6
Комментарии5

50 потрясающих плагинов jQuery

Время на прочтение1 мин
Количество просмотров89K

Кто-то вчера шутил, а кто-то занимался реально полезными вещами. Как например болгарский разработчик Мартин Ангелов, опубликовавший впечатляющий обзор JS библиотек:
http://tutorialzine.com/2013/04/50-amazing-jquery-plugins/
Настоятельно рекомендуется к обозрению.
PS Куда-то пропал тип топика «Ссылка» :(
Всего голосов 121: ↑76 и ↓45+31
Комментарии20

Правила жизни в ИТ проектах

Время на прочтение5 мин
Количество просмотров36K
За все время работы в ИТ я принимал участие в различных сферах деятельности. Я был и тимлидом, и разработчиком и менеджером проекта. Вел крупные и не очень проекты, среди них были как успешные, так и не очень. Я работал как с профессионалам высочайшего класса (по крайней мере именно такими я считал и считаю этих людей до сих пор) так и с не очень опытными коллегами. Я сотрудничал как с людьми проработавшими в ИТ всю свою жизнь, так и с теми — чьи интересы и деятельность лежит в совершенно других сферах.
Все это время я чему-то учился и продолжаю учится по сей день.

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

Сегодня я хочу поделится теми советами, которые сам был бы рад услышать тогда, когда только начинал свою деятельность.
Читать дальше →
Всего голосов 72: ↑58 и ↓14+44
Комментарии32

Компиляция пакетов

Время на прочтение2 мин
Количество просмотров33K
В Ubuntu используется философия пакетного менеджмента, то есть все программы ставятся из пакетов deb, в которых хранится, собственно сама программа и скрипты, которые корректно ставят/удаляют/обновляют. Пакеты deb можно найти в сети Интернет, на дисках. Самый лучший способ использовать репозитории, хранилища deb пакетов. Если использовать репозитории, то при появлении в них новых версий установленных у вас программ, вам будет проще и быстрей обновить их. Это очень удобно и позволяет держать систему актуальной и защищенной. Иногда требумой программы в репозитариях нет и приходится компилировать из исходников. Но это надо делать правильно.
Сегодня я хочу предложить изящный метод, не раз помогавший мне.
Читать дальше →
Всего голосов 81: ↑57 и ↓24+33
Комментарии44

Почему вам стоит использовать TypeScript

Время на прочтение3 мин
Количество просмотров84K
Если вы еще не в курсе: JavaScript победил. На сегодняшний день это самый кроссплатформенный язык, доступный для любых устройств. На нем можно создавать веб-приложения (клиент и сервер), в том числе с оффлайн-режимом работы, десктопные приложения (для Windows 8), приложения для смартфонов и планшетов (PhoneGap), расширения для Microsoft Office, SharePoint и Dynamics. Код на JavaScript работает в СУБД, таких как MongoDB и даже Hadoop в Windows Azure (BigData однако).

На Javascript уже написаны Doom и эмулятор Linux. Фактически решая любую задачу, кроме написания модуля ядра ОС, вы встретитесь с JavaScript. Если вы еще не знаете JavaScript, то вам следует срочно начать его изучать.
А причем тут TypeScript?
Всего голосов 128: ↑73 и ↓55+18
Комментарии217

Использование Razor отдельно от ASP.NET MVC

Время на прочтение4 мин
Количество просмотров10K
По роду деятельности студентом мне часто приходится писать различные лабораторные и курсовые работы. Неотъемлемая часть этих работ(как и в 80% задач бизнес-программирования) — код составления отчета о найденных элементах в базе данных или выполненной длительной и сложной операции. В десктопном программировании в рамках .NET Framework есть различные способы решения подобных проблем:
  • Старая школа: формат RTF никто не отменял, однако вручную составить что-либо сложнее цветного текста со шрифтами разного цвета и ссылками лично у меня не получалось. Способ действенный, но стандарт не самый легкий для понимания, на последнюю версию даже смотреть страшно
  • Для Silverlight/WPF — формирование FlowDocument своими руками. Объектная модель однозначно удобнее формирования старого формата вручную, но вариант тоже только для смелых
  • Сторонние решения вроде Crystal Reports, возможно и очень мощный инструмент для создания отчетов, но не всегда в этом есть необходимость, к тому же не всегда есть возможность тянуть пару-тройку дополнительных программных продуктов1
  • Использование Microsoft Office Interop. Нет, это издевательство. Ручная работа с памятью в управляемой среде вызывает лишь бурю радости. Начинающий программист выпьет не одну упаковку кофе, прежде чем смирится с подобным принципом работы.
  • Формирование HTML. На нашу радость, стандарт позволяет создать документы средней степени форматированности, с помощью CSS можно довести до ума. Минусы — оформить документ по всем требованиям крайне затруднительно. Но это если в этом есть необходимость. Плюсы: простота стандарта и всеобщий переход «в облака и браузеры» стимулирует развитие HTML.

О последнем я и буду вести речь.
Читать дальше →
Всего голосов 32: ↑26 и ↓6+20
Комментарии9

intro.js — пошаговое руководство для веб-страницы

Время на прочтение1 мин
Количество просмотров51K


Эта маленькая библиотека позволяет очень просто создать пошаговое введение для сайта или приложения. Достаточно добавить атрибуты data-intro и data-step с описанием и номером шага соответственно к нужным элементам страницы. Вот так:

<a href='http://google.com/' data-intro='Hello step one!' data-step='1'></a>
Читать дальше →
Всего голосов 139: ↑134 и ↓5+129
Комментарии24

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Backend Developer, Server Administrator
C#
Linux
Golang
Docker
Git
SQL
.NET