ISBuilder 8.6.4

There is a newer version of this package available.
See the version list below for details.
dotnet add package ISBuilder --version 8.6.4
                    
NuGet\Install-Package ISBuilder -Version 8.6.4
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ISBuilder" Version="8.6.4" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ISBuilder" Version="8.6.4" />
                    
Directory.Packages.props
<PackageReference Include="ISBuilder" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ISBuilder --version 8.6.4
                    
#r "nuget: ISBuilder, 8.6.4"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package ISBuilder@8.6.4
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ISBuilder&version=8.6.4
                    
Install as a Cake Addin
#tool nuget:?package=ISBuilder&version=8.6.4
                    
Install as a Cake Tool

ISBuilder

Information System Builder — конструктор информационных систем на .NET 8.
Один пакет — все инструменты для разработки WinForms + EF Core + SQL Server приложений.

Установка

dotnet add package ISBuilder

Подтягивает все 27 пакетов автоматически. Ничего дополнительно устанавливать не нужно.


Состав пакетов

Пакет Пространство имен Описание
AppBuilder AppBuilder Конструктор CRUD-приложений за 15 строк
ExportKit UniversalExport Экспорт/импорт в 11 форматов (JSON, XML, CSV, TXT, Excel, PDF, HTML, YAML, Markdown, Word, SQL)
EFQueryKit EFQueryKit Запросы EF без лямбд, CRUD, агрегации
AutoFormsKit AutoForms Автогенерация диалогов с валидацией [Required], [StringLength], [DataType]
SeedKit SeedKit Генератор тестовых данных (русские ФИО, адреса, телефоны)
TestCaseKit TestCaseKit Генератор тест-кейсов для тестирования ИС
ISBuilder Мета-пакет, подтягивает все 27 пакетов
ConnectKit ConnectKit Визуальный диалог подключения к SQL Server
NotifyKit NotifyKit Всплывающие уведомления (тосты)
AppSettingsKit SettingsKit Хранение настроек приложения в JSON с секциями
ValidationKit ValidationKit Валидация данных без лямбд
MenuKit MenuKit Генератор меню WinForms
DashboardKit DashboardKit Панель статистики с цветными карточками
MigrationKit MigrationKit Управление БД (создание, бэкап, восстановление, сид)
HelpKit HelpKit Автоматическая справка по модели данных
DataDictKit DataDictKit Словарь данных в Word
SearchKit SearchKit Панель поиска для DataGridView
StatusBarKit StatusBarKit Статусная строка с часами и счетчиком записей
AuthKit AuthKit Авторизация (логин, роли, хеширование паролей)
UmlKit UmlKit UML/ER-диаграммы (PlantUML, Mermaid, Draw.io)
PrintKit PrintKit Печать таблиц с предпросмотром
ThemeKit ThemeKit 6 тем оформления (Dark, Light, Blue, Green, Purple, Orange) + сохранение выбора
ChartKit ChartKit Диаграммы (столбчатая, круговая, линейная)
AuditKit AuditKit Журнал действий пользователей
SchedulerKit SchedulerKit Планировщик фоновых задач
ReportKit ReportKit Генерация PDF-отчетов с таблицами и сводкой
CalcKit CalcKit Бизнес-калькуляторы (кредит, депозит, пособие, доставка и др.)
MatchKit MatchKit Движок подбора записей по критериям с оценкой совпадения

Быстрый старт: Приложение за 30 строк

Полноценная информационная система с дашбордом, CRUD, поиском, экспортом, аудитом и отчетами:

using AppBuilder;
using AuditKit;
using ReportKit;
using SchedulerKit;
using ChartKit;

// Запуск приложения
App.Create<EmploymentDb>("ИС Служба занятости")
   .WithMenu()
   .WithDashboard(db => new[] {
       ("Вакансий", (object)db.Vacancies.Count(), Color.FromArgb(52,152,219)),
       ("Соискателей", (object)db.Applicants.Count(), Color.FromArgb(46,204,113)),
       ("Предприятий", (object)db.Enterprises.Count(), Color.FromArgb(155,89,182))
   })
   .AddTab<Vacancy>("Вакансии")
   .AddTab<Applicant>("Соискатели")
   .AddTab<Enterprise>("Предприятия")
   .WithExport()
   .WithSearch()
   .WithStatusBar()
   .Size(1200, 750)
   .Run();

// Планировщик: проверка зависших вакансий каждый день в 9:00
TaskScheduler.Daily(new TimeOnly(9, 0), () => {
    var stale = db.Vacancies.Where(v => v.PublishedDate < DateTime.Now.AddDays(-90)).Count();
    if (stale > 0) Notify.Warning($"{stale} зависших вакансий!");
});

// Генерация отчета
var dt = db.Vacancies.Query().Run().ToDataTable();
Report.Create("Отчет по вакансиям")
    .AddTable(dt)
    .AddSummary("Salary")
    .SavePdf("report.pdf");

Покрываемые предметные области (25+)

ISBuilder содержит инструменты для разработки информационных систем по любой предметной области:

Область Примеры сущностей
Служба занятости Вакансии, Соискатели, Предприятия, Отклики
Банк Клиенты, Кредиты, Вклады, Платежи
Гостиница Номера, Гости, Бронирования, Услуги
Магазин Товары, Заказы, Клиенты, Скидки
Транспорт Рейсы, Билеты, Пассажиры, Маршруты
Аптека Лекарства, Рецепты, Поставщики, Продажи
Поликлиника Врачи, Пациенты, Приемы, Диагнозы
Автосалон Автомобили, Клиенты, Продажи, Сервис
Библиотека Книги, Читатели, Выдачи, Авторы
Риелторское агентство Объекты, Клиенты, Сделки, Агенты
Турагентство Туры, Клиенты, Бронирования, Направления
Ресторан Блюда, Заказы, Столики, Официанты
Автосервис Автомобили, Заказ-наряды, Запчасти, Мастера
Склад Товары, Поступления, Отгрузки, Ячейки
Учебный центр Курсы, Студенты, Преподаватели, Оценки
Кинотеатр Фильмы, Сеансы, Залы, Билеты
Салон красоты Услуги, Мастера, Клиенты, Записи
Фитнес-клуб Абонементы, Клиенты, Тренеры, Занятия
Страховая компания Полисы, Клиенты, Выплаты, Агенты
Доставка еды Блюда, Заказы, Курьеры, Рестораны
Ветеринарная клиника Животные, Владельцы, Приемы, Лечение
Прокат автомобилей Автомобили, Клиенты, Аренда, Тарифы
Управляющая компания ЖКХ Дома, Жильцы, Платежи, Заявки
Спортивная школа Секции, Тренеры, Ученики, Соревнования
Издательство Книги, Авторы, Тиражи, Продажи

Как использовать (How To)

Шаг 1. Создать проект

dotnet new winforms -n MyApp
cd MyApp

Шаг 2. Установить ISBuilder

dotnet add package ISBuilder

Все 27 пакетов установятся автоматически.

Шаг 3. Создать модели данных

Создайте классы сущностей по вашей предметной области:

public class Vacancy
{
    public int Id { get; set; }
    public string Position { get; set; }
    public decimal Salary { get; set; }
    public string EmploymentType { get; set; }
    public DateTime PublishedDate { get; set; }
    public int EnterpriseId { get; set; }
}

Шаг 4. Создать DbContext

using Microsoft.EntityFrameworkCore;

public class MyDbContext : DbContext
{
    public DbSet<Vacancy> Vacancies { get; set; }
    public DbSet<AuditKit.AuditLog> AuditLogs { get; set; }

    protected override void OnConfiguring(DbContextOptionsBuilder options)
        => options.UseSqlServer(
            "Server=.;Database=MyAppDb;Trusted_Connection=true;TrustServerCertificate=true");
}

Шаг 5. Создать и заполнить БД

using MigrationKit;
using SeedKit;

var db = new MyDbContext();
await DbHelper.EnsureCreatedAsync(db);        // создать БД
var data = Seeder.Generate<Vacancy>(50);       // сгенерировать тестовые данные
db.Vacancies.AddRange(data);
db.SaveChanges();

Шаг 6. Запустить приложение

using AppBuilder;

App.Create<MyDbContext>("Моя информационная система")
   .WithMenu()
   .WithDashboard(db => new[] {
       ("Записей", (object)db.Vacancies.Count(), Color.FromArgb(52,152,219))
   })
   .AddTab<Vacancy>("Вакансии")
   .WithExport()
   .WithSearch()
   .WithStatusBar()
   .Size(1200, 750)
   .Run();

Шаг 7. Добавить дополнительные функции

// Отчет в PDF
var vacancies = db.Vacancies.ToList();
var dt = UniversalExport.ExportManager.ToDataTable(vacancies);
Report.Create("Отчет").AddTable(dt).AddSummary("Salary").SavePdf("report.pdf");

// Диаграмма
var chart = SimpleChart.Bar(dt, "Position", "Salary", "Зарплаты");

// Расчет
decimal benefit = BizCalc.UnemploymentBenefit(70000, 4);

// Подбор
var matches = Matcher.FindWithScore(vacancies,
    new MatchRule("Salary", ">=", 60000, weight: 3));

// Аудит
Audit.Log(db, "Экспорт данных", "admin");

// Планировщик
TaskScheduler.Daily(new TimeOnly(9, 0), () => CheckStaleRecords());

Лицензия

MIT

Product Compatible and additional computed target framework versions.
.NET net8.0-windows7.0 is compatible.  net9.0-windows was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
8.7.2 113 4/13/2026
8.7.1 95 4/12/2026
8.7.0 99 4/12/2026
8.6.9 104 4/12/2026
8.6.8 100 4/12/2026
8.6.7 95 4/12/2026
8.6.6 96 4/12/2026
8.6.5 99 4/12/2026
8.6.4 93 4/12/2026