Skip to main content

No project description provided

Project description

dev-netgen

Плагин для автоматической генерации c# кода - CRUD'а с файлом контроллера и комментариев на основе выбранной сущности.

CRUD и controller

Включает генерацию валидатора с правилами .NotNull().NotEmpty() для полей типа string и IsInEnum() для полей типа перечислений сущности.

Сгенерированный CRUD содержит комментарии, взятые из summaries сущности и её полей.

Есть поддержка для legacy-проектов, в контроллерах которых используются ControllerHelper.GetResultWithErrorAsync()

Возможности

Создаёт Vm и Dto подмодели для каждого навигационного свойства, если в после открывающегося тэга summary сущности стоит '@'

/// <summary>@
/// Навигационное свойство - список соглашений
/// </summary>
public List<Agreement> Agreements { get; } = new();   

Не включает поля, помеченные знаком '!' у сущности, в результирующие Vm/Dto

/// <summary>!
/// Текстовое поле с информацией, которое не попадет в Vm
/// </summary>
public string Data { get; set; }

После генерации отметки очищаются

Summaries для Vm и Dto

Копирует все имеющиеся комментарии к свойствам сущности в целевую или во все относящиеся к ней Vm/Dto. Добавляет комментарий к классу, если он отсутствует.

Установка

Установить python пакет (python >= 3.10)

pip install devnetgen

Установить плагин в IDE

  1. Установить плагин LivePlugin by Dmitry Kandalov (иногда встаёт с 2 попытки )
  2. Добавить новый пользовательский Kotlin плагин через окно LivePlugin и скопировать в него код из LivePlugin IntelliJ/plugin.kts
  3. Активировать пользовательский плагин в том же окне

Использование

Из IDE

ПКМ по сущности - NetGen: генерация ->

  • Сгенерировать CRUD
  • Сгенерировать CRUD на legacy controller
  • Сгенерировать <summary> в файле(-ах) Vm/Dto на основе сущности

Через консоль

dev-netgen all [path/to/entity.cs] --legacy-controller
dev-netgen summary [path/to/class_or_entity.cs]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

devnetgen-0.1.8.tar.gz (17.4 kB view hashes)

Uploaded Source

Built Distribution

devnetgen-0.1.8-py3-none-any.whl (25.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page