| Summary: | Создание тестовой версии веб-приложения на ASP.NET CORE | ||
|---|---|---|---|
| Product: | [Сторонние программы (Other programs)] Прочее | Reporter: | Алексей Герасимов <alexger97> |
| Component: | Общее | Assignee: | Алексей Герасимов <alexger97> |
| Status: | DEFERRED --- | QA Contact: | Vitaly Lipatov <lav> |
| Severity: | minor | ||
| Priority: | P4 | ||
| Version: | не указана | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Заявки RT: | Связано с: | ||
| Дата напоминания: | |||
| Bug Depends on: | |||
| Bug Blocks: | 14514 | ||
|
Description
Алексей Герасимов
2020-03-24 18:27:07 MSK
Создал первое тестовое приложение, в котором пока только успел реализовать небольшую часть из задуманного https://gitlab.eterfund.ru/alexger97/Test-ASP.NET.CORE/tree/master/WebApplication1 Параллельно изучаю документацию по данной платформе, смотрю различные готовые решения. На данный момент, эта просто вью с формой, которая получает данные от пользователя и передает их в контроллер для дальнейшей обработки. Изучал вопрос реализации в Asp.Net.Core мнговенного взаимодействия клиента и сервера в режиме реального времени. Оптимальное решение использование open source SignalR. Документация: https://docs.microsoft.com/ru-ru/aspnet/core/signalr/introduction?view=aspnetcore-3.1 Очень полезная лекция об основах: https://www.youtube.com/watch?v=n5SFKAAbIhk Начал реализацию тестововой функциональности - прежде всего это актуально в процессе обработки информации при окончании приема, приглашении нового пациента и оповещении на Табло. Использую разработанную View для врача, ведущего прием, осваивал на практике взаимодействие с Razor-движком, использовал рализные типовые приемы, которые изучал ранее и сегодня. Получил представление о том, как лучше использовать Razor-page или же обычные представления нацеленные на MVC. В следующих планах освоить более тщательно всю модель взаимодействия с сервером и начать практиковаться с SignalR Была проделана следующая системная работа над проектом : Прежде всего - создание правильной структуры и разделение логики между частями решения. Создал несколько библиотек: 1. TestSystem.Data 2. TestSystem.Models 3. TestSystem.Service По названию не трудно догадаться за что будет отвечать каждая из них. Более детально расписал модели чущностей, проделал различные манипуляции по работе с БД (дорабоал класс, отвечающий за сохранение контекста данных) Удалось продвинуться в создании Razor-pages, прежде всего, это касается свзяки с вью и модели. Довольно много мелочей, на изучение и правку которых пришлось тратить внимание Начал работу над созданием новых страниц по добавлению пользователей системы : докторов, администраторов и операторов. Добавил понятие очереди и создал предварительно логику по созданию очереди и обработку результата приема. Также сделал модель приема, веду работу над постепенным улучшением данной логики. Данная работа направлена прежде всего на создание каркаса системы и для того, чтобы в полседующем написанные View - имели полный набор возможностей для общения с уровнем логики Неспеша продолжаю работу Сегодня : доделал и наладил тестовую версию данных для дальнейшей работы: Пациенты, Документы, Очереди. Сделал сервис по работе с новыми пользователями Скоро сделаю коммит со всеми измененими Делаю коммит. На данный момент готов базовый уровень логики, сохранения данных, вью для добавления пользователей в систему. Для этого пришлось внимательно изуть правила валидации, построения модели, таг-хелперы и т.д. В ближайшее время - заниматься буду разработкаой страниц по списку пользователей, доработки страницы приема врача, практического использования SiganlR. К сожалению, из-за недостатка опыта имеено в веб разработки есть пару затыков по адекватной реализации некоторых аспектов, но дело поправимое Небольшие доработки по внешнему виду и валидации даты на страницах добавления пользователей, также начал разбираться с Jquery и JavaScript. Хочу сказать, что в данной области у меня мало знаний, так что смотрю мнго курсов по данному направлению, чтобы понимать всю картину работы. Использую Razor-pages добавлил View для просмотра списка пользователей (операторы и врачи). Также перешел к тому, чтобы в полной мере сделать авторизацию и аунтетификацию для операторов системы : написал в Razor-pages страницу для входа пользователя, в процессе окончания написания правильной логики по аутеницикации на основе куки Сделал : авторизацию на основе куки. Теперь для доступа к определенном функционалу системы необходиом пройти аутентификацию и авторизацию на сайте. При обращении к закрытым сегментам происходит автоматическое перенапавление на страницу авторизации. Также начал работу над личным кабинетом врача откуда можно будет смотреть и выбирать прием (начинать и вести его в соответствие с очередью), смотреть статитстику приема врача. Также доработал в некоторых моментах уровень сервиса. Продолжаю изучать JS и частичные представления в ASP NET CORE Сегодня продолжал работу над личным кабинетом, также произовдил измения шаблона мастер страницы в целях улучшения верхнего меню. При изучении новых возможностей ASP.NET.CORE 3.1 наткнулся на новую возможность, которая недавно появилась в этом выпуске. ASP.NET Core Blazor. Среди заявленных возможностей данной технологии: 1. Создание многофункциональных интерактивных пользовательских интерфейсов на C# вместо JavaScript; 2. Совместное использование серверной и клиентской логик приложений, написанных с помощью .NET; 3. Отображение пользовательского интерфейса в виде HTML-страницы с CSS для широкой поддержки браузеров, в том числе для мобильных устройств. Лично мне очень понравилась та концепция, которая представлена в описании. Мне кажется, они в конечном итоге хотят получить что-то подобное, как в XAML. Чтобы без обновления страниц измененения на клиенте происходили из C# кода, особенно в связке с SignalR. Добраться до SignalR мне в прямую не удается, так как считаю, что нужно доделать логику до момента, где она нужна будет. Начал активное изучение данной технологии, чтобы добавить функциональность с нею в тестовое приложени. Но стоит сказать, что данная технология еще в довольно не стабильной версии, скорее всего в следующей версии Core будет реализована ее более уверенная применимость Работал над изучением темы по использованию Blazor. Прежде всего, установил необходимые пакеты обновил среду разработки. Далее - используя туториалы с сайта Microsoft разбирался над тем, как устроена логика по подключению, настройке Blazor. Стоит сказать, что хоть Blazor основан на Razor и использует его синтаксис, но там реализована своя логика по работе функциями С# кода и т.д. Используя стандартный шаблон от Ms приложения на Blazor пытался внедрить в разрабатываемое тестовое приложение Blazor-представление. Удалось настроить и внедрить, но возникла проблема с маршуртизацией при доступе к представлению. Пока не решил. Учитывая обстановку того, что данный проект пока не совсем актуален для первостепенной разработки, то прекращаю писать в багу до момента актулизации. Но между тем в свободное время буду по-возможности продолжать работу над данным проектом Думаю, стоит отметить, как отложенную =( Отмечаю, как отложенную |