Открыть список
Как стать автором
Обновить
48.2
Карма
0
Рейтинг
Андрей Губский @Ernado

Эксперт в области разработки и облачных технологий

Авторизация в ASP.NET Core MVC

Разработка веб-сайтов.NETC#

Logo designed by Pablo Iglesias.


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


Содержание:



Читать дальше →
Всего голосов 28: ↑28 и ↓0 +28
Просмотры59.7K
Комментарии 5

Как рекламировали компьютеры в 1990-е

Блог компании RUVDS.comИнтернет-маркетингМедийная реклама
Перевод
В наши дни никого не удивишь жёстким диском. Терабайтный HDD можно взять за 50 долларов. Но были времена, когда и реклама диска на 10 мегабайт казалась чем-то вроде отрывка из фантастического романа. Вот, скажем, весьма выгодное летнее предложение из 1980-го года. Нашли это чудо участники проекта vintagecomputing.


Если вы, с мыслью: «надо брать», спешите на объявление откликнуться, прочтите сначала то, что напечатано мелким шрифтом. $3495 – это за не совсем новый диск. 10-мегабайтник, которым ещё никто не пользовался, обойдётся немного дороже, в $4495. Но, честно говоря, оно того стоит.
Читать дальше →
Всего голосов 48: ↑42 и ↓6 +36
Просмотры22.1K
Комментарии 58

Поиграл == покодил

Блог компании EdisonПрограммированиеУчебный процесс в IT
Перевод
image

Мой рекорд скорости написания кода «на C» был в консоли Quake II. Причем абсолютно без ошибок. В темноте, не глядя, трясущимися руками надо было набрать примерно такое:

bind SHIFT "+snipe"
alias +snipe "sensitivity 2.5; fov 30"
alias -snipe "fov 90; sensitivity 4"

Боги умели прописывать RocketJump.

RocketJump
bind t "superrjr"

bind a "superrjn"

alias superrjr "echo SuperRocketJump enabled; bind a +srj; bind t superrjc"

alias superrjn "echo SuperRocketJump disabled"

alias superrjc "echo SuperRocketJump disabled; bind a superrjn; bind t superrjr"

alias +srj "lookdown1;hand 2;rjump"

alias -srj "lookdown2"

alias lookdown1 "cl_pitchspeed 999999;+lookdown"

alias lookdown2 "-lookdown;cl_pitchspeed 200;-attack;-moveup;wait;wait;wait;centerview;hand 2;cl_maxfps 80"

alias rjump "+moveup;+attack;wait;wait;wait;wait;cl_maxfps 0"

alias +QLD "+lookdown;cl_pitchspeed 999"

alias -QLD "-lookdown;cl_pitchspeed 200"

alias +RocketJump "hand 2;+QLD;wait;wait;+attack;+moveup"

alias -RocketJump "hand 2;-QLD;-attack;-moveup"

alias SuperRocketJump "hand 2;+QLD;wait;wait;wait;wait;+attack;+moveup;wait;cl_maxfps 0;LWX3;cl_maxfps 90;-QLD;-attack;-moveup;hand 2" 


Под катом — подборка дюжины проектов, которые заточены на то, чтобы играючи повысить кодерское мастерство.
Читать дальше →
Всего голосов 57: ↑51 и ↓6 +45
Просмотры65.5K
Комментарии 41

Консоль разработчика Google Chrome: десять неочевидных полезностей

Блог компании RUVDS.comРазработка веб-сайтовJavaScriptGoogle ChromeHTML
Перевод
Как с помощью консоли разработчика превратить Google Chrome в подобие текстового редактора? Какой смысл в ней приобретает знакомый многим по jQuery значок $? Как вывести в консоль набор значений, оформленный в виде вполне приличной таблицы? Если сходу ответы на эти вопросы в голову не приходят, значит вкладка Console из инструментов разработчика Chrome ещё не раскрылась перед вами во всей красе.

image

На первый взгляд, перед нами – вполне обычная JavaScript-консоль, которая годится только на то, чтобы выводить в неё логи ответов серверов или значения переменных. Я, кстати, так ей и пользовался, когда только начал программировать. Однако, со временем набрался опыта, подучился, и неожиданно для себя обнаружил, что консоль Chrome умеет много такого, о чём я и не догадывался. Хочу об этом сегодня рассказать. Да, если вы читаете сейчас не на мобильнике, можете тут же всё это и попробовать.
Читать дальше →
Всего голосов 88: ↑83 и ↓5 +78
Просмотры189.6K
Комментарии 62

Видеозаписи лучших докладов .NET-конференции DotNext 2016 Piter

Блог компании JUG Ru Group.NET


Пока подготовка к московскому DotNext идёт полным ходом, мы открыли доступ к видеозаписям докладов с прошедшей летом конференции. По ссылке — полный плейлист, а под катом — топ-5 докладов по отзывам участников. Говоря «топ», мы не имеем в виду наши любимые доклады или выбор каких-то «экспертов» — лучшие отобраны на основе взвешенной оценки от 80% участников конференции. Как думаете, чьё выступление зрители оценили выше — перфоманс-эксперта Саши Гольдштейна или харизматичного Дино Эспозито?
Читать дальше →
Всего голосов 34: ↑34 и ↓0 +34
Просмотры12.8K
Комментарии 10

ASP.NET Core на Nano Server

Блог компании MicrosoftOpen source.NETASP
Tutorial
Представляем первую из пяти статей, посвященных работе с ASP.NET Core: руководство по развертыванию приложения ASP.NET Core на Nano Server со службами IIS.


Читать дальше →
Всего голосов 34: ↑32 и ↓2 +30
Просмотры18.7K
Комментарии 26

Node.js и JavaScript вместо ветхого веба

Разработка веб-сайтовJavaScriptПрограммированиеРазработка мобильных приложенийNode.JS

Вступление


Эта статья про экспериментальный технологический стек общего назначения. Она не просто дублирует мой доклад на конференции ОдессаJS 2016, но содержит все то, что в доклад не поместилось из-за недостатка времени и исключительного масштаба темы. Я даже перезаписал доклад голосом по тексту статьи и это можно послушать, а не читать. С этой темой я уже выступил в Уханьском Университете (Китай), а в Киевском Политехническом Институте провел целую серию семинаров в 2015-2016 годах. Основная идея состоит в том, что проблемы фрагментации технологий могут быть решены, если спроектировать весь технологический стек, сконцентрировавшись на структурах данных, синтаксисе и протоколе взаимодействия компонентов. Большинство вопросов несовместимости, отпадет само собой. Пусть даже этот подход будет альтернативным и экспериментальным, но его задача будет выполнена, если он наметит путь и продемонстрирует принципиальную возможность создания простого и элегантного решения общего назначения. Эта идея является естественным продолжением подхода Node.js, когда мы сокращаем количество языков и технологий в системе, разрабатывая и клиент и сервер на JavaScript. Несмотря на экспериментальность, протокол JSTP уже используется в коммерческих продуктах, например, для интерактивного телевидения компанией SinceTV, где позволяет подключить одновременно десятки миллионов пользователей. Это решение получило приз за инновации в области телевидения на международном конкурсе Golden Panda Awards 2015 в Ченду (Китай). Есть внедрения в сфере управления серверными кластерами, готовятся решения для медицины, интерактивных игр, электронной торговли и услуг.



Слайды / Аудио версия


Читать дальше →
Всего голосов 40: ↑25 и ↓15 +10
Просмотры26.1K
Комментарии 95

Разработка веб-сайта на базе ASP.NET Core и Platformus CMS

CMS.NET
Tutorial
В этой статье я хочу познакомить вас с Platformus CMS — молодой системой управления содержимым веб-сайтов (10-я альфа на момент написания статьи), построенной на базе не менее молодых ASP.NET Core и ExtCore framework. Подробно рассматривать архитектуру и другие технические детали мы сейчас не будем, а ограничимся упоминанием нескольких интересных фактов и затем сразу же попробуем CMS’ку в деле — создадим небольшой тестовый проект на ее основе.

Несколько интересных фактов


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

Написана CMS на C#. Благодаря возможностям ASP.NET Core, она одинаково хорошо может работать на Windows, Linux и Mac. Сама исполняемая среда, необходимая для работы любого приложения на .NET Core, может быть как установлена отдельно, так и интегрирована непосредственно в само приложение. В качестве веб-сервера может использоваться IIS либо Kestrel (во втором случае приложение становится веб-сервером для самого себя и может работать самостоятельно или же быть встроено в контейнер вроде IIS или Nginx). В качестве хранилища данных на текущий момент поддерживаются Microsoft SQL Server, SQLite и PostgreSQL. С учетом всего перечисленного, можем получить конфигурацию, которой для работы не требуется вообще ничего стороннего — скопировал, запустил и пользуешься (может быть удобно для тестирования, например).

(В статье несколько десятков скриншотов.)
Читать дальше →
Всего голосов 17: ↑13 и ↓4 +9
Просмотры21.8K
Комментарии 14

Условное внедрение зависимостей в ASP.NET Core. Часть 2

Блог компании NIXПрограммирование.NETC#


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

Во второй части вы увидите, как можно расширить возможности инъектора зависимостей, на примере выбора необходимой реализации по идентификатору во время выполнения приложения.
Читать дальше →
Всего голосов 18: ↑16 и ↓2 +14
Просмотры6K
Комментарии 23

От регистрации до витрины: как выложить мобильное приложение в App Store и Google Play (часть 1)

Блог компании ScorocodeРазработка под iOSРазработка мобильных приложенийРазработка под Android
Tutorial


Начинающие мобильные разработчики часто испытывают затруднения при выкладывании своих проектов в Google Play и App Store. И если с первым особых проблем не возникнет, то со вторым придется повозиться, особенно, если вы выкладываете приложение от юридического лица. Поэтому в помощь начинающим мы решили написать туториал по размещению в официальных сторах приложений под iOS и Android.
Читать дальше →
Всего голосов 12: ↑11 и ↓1 +10
Просмотры107.8K
Комментарии 30

Полный список инструментов и утилит для Microsoft SQL Server

SQLMicrosoft SQL Server

Полезные платные и бесплатные утилиты, инструменты для Microsoft SQL Server — полный список из 165 инструментов.

Читать дальше →
Всего голосов 12: ↑10 и ↓2 +8
Просмотры37.2K
Комментарии 59

VIM: зачем, если есть IDE, и как?

Разработка веб-сайтовПрограммированиеVIM

Сегодня вышел текст о том, как человек перешёл с Sublime на VIM. В комментариях, как обычно это бывает, появились сообщения в духе "Зачем мне тратить время на Vim, если есть IDE, где всё работает?" (люди даже статьи на эти темы пишут). Хотел внести свои пять копеек, но объём написанного плавно перевёл текст из разряда "комментарий" в разряд небольшой статьи.


В целом, всё, что ниже — это вкусовщина, конечно. Нравится вам ваша IDE (или ваш текущий инструмент), да и пожалуйста. Используйте для текущих задач то, чем вы владеете лучше всего, это аксиома эффективной работы. Но если у вас вдруг появилось немного времени на повышение вашей эффективности в целом, то попробую вас заинтересовать именно Vim'ом, сравнивая его с некой обобщенной IDE.


Узнать зачем и как начать
Всего голосов 100: ↑75 и ↓25 +50
Просмотры110.6K
Комментарии 401

Переговоры о зарплате — как не прогореть

Управление персоналомКарьера в IT-индустрии
Перевод
image
Все фотографии в этой статье взяты из трилогии Кристофера Нолана «Тёмный рыцарь». Это всё же Бэтмен!

Давайте сыграем!

При подготовке вы хорошо поработали с телефоном. Интервью в офисе этим утром проходили занятно. После общего обеда сотрудник отдела кадров сел за стол напротив вас. Он спросил: «Какую зарплату вы бы хотели?».

Что вам делать? Что же вам делать?!


Что бы вы ни делали, не называйте ему конкретную цифру. Как только у него появится цифра, он сможет задать тон при продолжении переговоров. Эта цифра будет потолком — самое высокое предложение, которое вы сможете получить на этом месте. Но, скорее всего, вы получите меньше.

Или, возможно, он попробует другой подход, чтобы подтолкнуть вас назвать цифру: «Какая зарплата у вас сейчас?».

Этот вопрос звучит вполне резонно. Разве не надо отвечать на этот вопрос?
Читать дальше →
Всего голосов 81: ↑67 и ↓14 +53
Просмотры120.3K
Комментарии 392

Заключаем договор на создание технического задания

Управление проектами
Кому интересен договор на сайт, смотрим тут: Договор навороченный, Договор простой (удален автором).

Этот топик про более редкую ситуацию, когда перед собственно проектом нужно сделать ТЗ, а это большая и серьезная работа. На нее нужен договор и цена.
Читать дальше →
Всего голосов 49: ↑47 и ↓2 +45
Просмотры22.6K
Комментарии 50

Multiple dispatch в C#

Программирование.NETC#
Мы уже рассмотрели две статьи, где функционал C# dynamic мог привести к неожиданному поведению кода.
На этот раз я бы хотел показать позитивную сторону, где динамическая диспетчеризация позволяет упростить код, оставаясь при этом строго-типизированным.

В этом посте мы узнаем:
  • возможные варианты реализации шаблона множественная диспетчеризация (multiple/double dispatch & co.)
  • как избавиться от реализовать Exception Handling Block из Enterprise Library за пару минут. И, конечно же, упростить policy-based модель обработки ошибок
  • dynamic – эффективнее Вашего кода

Читать дальше →
Всего голосов 21: ↑20 и ↓1 +19
Просмотры26.2K
Комментарии 17

Content Delivery Network от Akamai стал доступен пользователям Azure

Microsoft Azure

Как и было анонсировано на На AzureCon в 2015 году, Content Delivery Network от Akamai стал доступен пользователям Azure! Теперь клиенты Microsoft могут использовать инфраструктуру Akamai, выбрав соответствующий тарифный план при создании нового CDN-ресурса:
Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Просмотры3.3K
Комментарии 0

Yandex Translate для Visual Studio Code

JavaScriptVisual StudioNode.JS
Из песочницы
Начну с того, что использую vim в качестве редактора файлов. Все удобно и быстро, но есть некоторые проблемы которые выделил при длительном пользовании:

  • Нет асинхронности. Знаю что есть nvim — но он работает не так быстро и не так гладко
  • Сложность написания плагинов. Спорный конечно вопрос для разных гуру — но честно говоря так много «каши», не хватает модульности и какой то структурности из уже реализованных «велосипедов»
  • Когда слишком много плагинов vim стартует — нужно быть честным, довольно долго и это напрягает

Пользуюсь так же по основному своему хобби — Android Studio. Очень прожорлив этот IDE к ресурсам системы, процессор иногда сходит с ума обрабатывая очередной цикл gradle assembleDebug.

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

Давно в Android Studio не хватало одной полезной штуки — перевод ресурсов strings.xml под другие языки. Делать раньше это было весьма неудобно:

  • Выделить текст
  • Скопировать
  • Перейти в любой онлайн переводчик
  • Вставить текст
  • Выбрать текущий язык перевода
  • Выбрать в какой язык перевести
  • Скопировать перевод
  • Открыть результирующий strings.xml
  • Вставить перевод

Чего хотелось — одной комбинацией клавиш получить моментальный результат.
Читать дальше →
Всего голосов 16: ↑11 и ↓5 +6
Просмотры9.8K
Комментарии 18

Краткая история Биткоин-Блокчейн для чайников. Сказка для взрослых

Блог компании ChronoPayПлатежные системы
image

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

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

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

Делал себе мультики Стив делал, и тут ему пришло в голову, что весьма скоро компьютеры превратятся в мобильники-дебильники и станут они называться смартфонами. Взял Стив пару единиц денежного измерения в миллиардах, пришел к четырем богатырям контента Соне, Универсалу и Эми и Варнеру, и сказал «Дяди – возьмите мои несчастные деньги и дайте мне все права на музыку да фильмы, на весь мир конечно.». Раздались грустные голоса – а как же монополия, на что Стив весьма веско заметил «Где несколько единиц, а где монополия, братьи мои? Во-первых, мои телефончики будут белые и очень-очень красивые, а соответственно безгрешные. Во-вторых, несколько единиц!!» Сказано – сделано. Как говорится так и вышло. И появился некий онлайн магазин музыки и фильмов, который совершенно внезапно работал лишь с беленькими и очень-очень красивыми телефонами, и внезапно только у этого магазина и оказались права на контент на весь мир. Нет, понятно, дабы публика не возопила, каким-то прямо скажем почти калекам тоже доставались права, но несколько урезанные, например, на диски группы Ласковый Май для распространения исключительно в Мозамбике беременным мужчинам старше 60ти.
Читать дальше →
Всего голосов 19: ↑10 и ↓9 +1
Просмотры16.9K
Комментарии 20

Экспериментальная функция отладки .NET Core в Visual Studio Code

Блог компании Microsoft.NETASPVisual Studio
Перевод
Сегодня мы выпускаем первую, экспериментальную и ознакомительную версию отладчика для набора инструментов ASP.NET Core CLI в составе редактора Visual Studio Code. Вначале я должен упомянуть несколько вещей:


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


Однако, .NET Core и функции отладки находятся на ранних этапах разработки, поэтому в VS Code отсутствует ряд возможностей, привычных для пользователей IDE Visual Studio. Вот некоторые особенности редактора:
Читать дальше →
Всего голосов 14: ↑11 и ↓3 +8
Просмотры10.4K
Комментарии 0

Azure-IaaS-Дайджест №3 (Март)

Microsoft Azure
Disclaimer: Я пишу в основном про Azure с точки зрения инфраструктуры (DSC, IaaS, Hybrid\Private Cloud, OMS, ASR, Backup и т.д.). Не про разработку под Azure (хотя иногда что-то проскакивает).

Продолжаем читать про Azure, третий выпуск. Было много довольно шумных новостей, из разряда SQL на линукс, поддержка Raspberry Pi 3 в Windows 10, но что прошло незамеченным?
Benjamin Armstrong про маленькие секреты Hyper-V. (offtop)
Новости!
Всего голосов 6: ↑4 и ↓2 +2
Просмотры850
Комментарии 0

Информация

В рейтинге
5,705-й
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность