Архивы категорий: .NET/C#

Как управлять Windows сервисом из программы WinForms [C#]

Возникло у меня задание, управлять сервисом Windows из GUI программы написанной на C# WinForms. Сервис управляет модемным Интернет подкючением. Заказчик захотел иметь возможность управлять сервисом напрямую из программы. Т.е. ему нужна следующая функциональность — Остановить, Запустить, Перезапустить, отобразить текущее состояние.

Для этого я написал простой класс, который делает это при помощи стандартного ServiceController класса.

Читать далее

Single Page Application : ASP.NET MVC .NET Core 2 + Angular 5. Часть 6.

В этой статье я продолжу улучшать тестовый проект. И по плану я буду делать следующие:

  • Изменю структуру проекта, сделаю его похожим на реальное приложение, с несколькими страницами, действиям пользователя, администрированием, авторизацией.
  • После реорганизации проекта, добавлю в него авторизацию на основе токенов OpenID/OAuth2 (используя ASOS)

Это достаточно много работы, несмотря на то, что это всего 2 пункта. Авторизация и аунтефикация обьемные темы. А реарганизация проекта снова вынуждает парвить файлы и добавлять реализацию в уже существующие. Поэтому это снова будет обьемная статья, так что будьте готовы 🙂

Читать далее

Single Page Application : ASP.NET MVC .NET Core + Angular 4. Часть 5.

Новая статья после долгого (вынужденного) перерыва. Это будет уже пятой частью в сери статей о создание одностраничного приложения с использованием ASP.NET MVC .NET Core и Angular 4. Следующим логичным шагом в создании приложения будет добавления авторизации пользователей. Но сначало нужно немного обновить проект. Со времени последней публикации прошло несколько месяцев и за это время произошло несолько событий:

  • Вышел релиз PostgreSQL 10 и pgAdmin 4
  • Вышло обновление .NET Core до версии 2.0
  • Обновилась система авторизации ASOS

Таким образом в данной статье я хочу описать подготовительные работы по обновлению проекта:

  • переведу базу данных на PostgreSQL 10
  • приведу имена таблиц и полей в соответствие с философией PostgreSQL
  • добавлю таблицу пользователей
  • обновим проект до версии .NET Core 2.0
  • перепишу код доступа к БД. Избавлюсь от Entity Framework и буду использовать более эффективный npgsql драйвер
  • вынесу код доступа к БД в отдельный проект
  • реализую обьекты для управления пользователями

Это будет подготовительный этап. В следующей части я займусь непосредственно реализацией авторизации:

  • Добавлю поддержку ASOS в проект для авторизации при помощи токенов OpenID / OAuth2
  • Реализую код для авторизации и создания access_token и refresh_token для работы с Web API
  • Реализую страницы авторизации и добавления новго пользователя в Angular 4
  • Изменю структуру проекта, что бы сделать его более завершенным

Как видите, я собираюсь сделать много изменений, и именно поэтому решил разбить статью на две части. Так будет проще воспринимать новую информацию.
Итак, начнем.

Читать далее

Single Page Application : ASP.NET MVC .NET Core + Angular 4. Часть 4.

Вот я добрался и до новой части в цикле статей о SPA на основе Angular 4 и ASP.NET MVC Core. Как и обещал, в этой части будем реализовывать следующие вещи:

  • добавим поддержку небольшой базы данных PostgreSQL
  • добавим новый HTML Tag Helper для отработки ввода данных

Читать далее

Single Page Application : ASP.NET MVC .NET Core + Angular 4. Часть 2.

В предыдущей части мы создали простой каркас веб сайта, который использует ASP.NET MVC и Angular. Но основная проблема – у нас как бы 2 приложения. Одно – это ASP.NET MVC, которое можно вызвать при помощи URL /home/index, а второе приложение – это Angular, которое доступно запускается из файла /index.html. Теперь давайте попробуем соединить эти два приложения в одно.

Читать далее

Single Page Application : ASP.NET MVC .NET Core + Angular 4. Часть 1.

Моя основная работа связанна с разработкой программ для встроенных систем и утилит, которые их обслуживают. Но мне всегда нравился Web и технологии связанные с ним. Мое знакомство с Web программированием началось давно, а первым серверным языком был старый и ужасный ASP. Это тот, который на Visual Basic. После этого был PHP и Perl. Ни один из них мне не нравился. У каждого были свои проблемы и до идеальной платформы разработки Web приложений они явно не дотягивали (PHP тоже не айс, хотя он и широко используется для самых разных проектов). А еще мне всегда нравилась платформа Windows. Поэтому появление ASP.NET было просто как божий дар для меня – платформа для разработки Web приложений, ориентирован на Windows IIS и при помощи моего любимого языка C# с мощной поддержкой в лице .NET Framework.

Читать далее

Функции CRC и LRC для Modbus RTU / Modbus ASCII

В предыдущих статьях описывался формат запросов и ответов для Modbus RTU и Modbus ASCII протоколов. В этих протоколах для подтверждения целостности данных используются контрольные суммы, которые вычисляются по специальным алгоритмам. В тех статьях я не описывал их, так что сейчас я приведу пример функций который это делают. Я собираюсь написать их на двух языках — C# и C/C++. Думаю они будут полезны.

Читать далее