1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/ceo_bitch-Zxw.Framework.NetCore

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Zxw.Framework.NetCore

Быстрая разработка на DotNetCore на основе EF Core в режиме Code First.

Nuget [последняя версия: 3.1.3.5]

  • Install-Package Zxw.Framework.NetCore -Version 3.1.3.5
  • dotnet add package Zxw.Framework.NetCore --version 3.1.3.5

Среда разработки:

  • VS2019 / VS Code
  • .net core 3.1.100

Поддерживаемые базы данных:

  • SQL Server
  • MySQL
  • Sqlite
  • InMemory
  • PostgreSQL
  • Oracle
  • MongoDB (бета) (третий драйвер Blueshift.EntityFrameworkCore.MongoDB)

Компоненты логирования:

  • log4net

Инъекционные компоненты:

  • Autofac
  • Aspectcore.Injector

Использование компонентов AOP для кэширования

В проекте используется промежуточное ПО AOP: AspectCore.Extensions.Cache

Пример

  • Zxw.Framework.NetCore.Demo

Адреса версий .NET Framework

  • Zxw.Framework.Nfx

Описание проекта

Журнал обновлений

2019/12/17

    1. Добавлен метод расширения единого входа AddCoreX в рамках фреймворка:
services.AddCoreX(config=> { })
    1. В методе AddCoreX по умолчанию включены инъекции, реализующие ISingletonDependency, IScopedDependency и ITransientDependency для классов с различными жизненными циклами, а также AddHttpContextAccessor и AddDataProtection. Если требуется автоматическая инъекция, достаточно реализовать интерфейсы ISingletonDependency, IScopedDependency, ITransientDependency.
    1. Добавлен контекст сеанса WebContext.
    1. Обновлён AspectCore до версии 2.0.0.
    1. Пример Zxw.Framework.NetCore.Demo был обновлён.

2019/09/16

    1. Изменён драйвер Oracle для efcore на официальный драйвер от Oracle.

2019/09/15

    1. Переработана реализация кэша AOP, теперь используется CachedAttribute.

2019/08/11

    1. Рефакторинг генератора кода, разделение на CodeFirst и DbFirst. a. Включить генератор кода:
    // Включить генератор кода
    services.UseCodeGenerator(new CodeGeneratorOption());
    b. Использовать генератор кода:
    // CodeFirst — создать код для других слоёв на основе модели
    dbContext.CodeFirst().GenerateAll(ifExsitedCovered:true);
    
    // DbFirst — создать код на основе существующих таблиц данных
    dbCOntext.DbFirst().GenerateAll(ifExsitedCovered:true);
    1. Добавлена генерация кода для APIController.

2019/04/25

    1. Изменено значение ключа по умолчанию для перехватчика кэша на {namespace}{class}{method}{хэш-код значения параметра}.
    1. Перехватчик кэша поддерживает тип Task<>.

2019/04/18

    1. Удалена функция триггера...
    1. Реализована поддержка нескольких баз данных. Использование:
    // Внедрение фабрики контекста базы данных
    services.AddDbContextFactory(factory =>
    {
        factory.AddDbContext<PostgreSQLDbContext>("db1", new DbContextOption(){ConnectionString = "User ID=postgres;Password=123456;Host=localhost;Port=5432;Database=ZxwPgDemo;Pooling=true;" });
        factory.AddDbContext<SqlServerDbContext>("db2", new DbContextOption() { ConnectionString = "" });
        factory.AddDbContext<MongoDbContext>("db3", new DbContextOption() { ConnectionString = "" });
    });


    // Получение
    public class TestController
    {
        public IDbContextCore DbContext1 { get; set; }
        public IDbContextCore DbContext2 { get; set; }
        public IDbContextCore DbContext3 { get; set; }

        public TestController(DbContextFactory factory)
        {
            DbContext1 = factory.GetDbContext("db1");
            DbContext2 = factory.GetDbContext("db2");
            DbContext3 = factory.GetDbContext("db3");
        }

        public void Run()
        {
            var db = DbContext1.GetDatabase();
            Console.WriteLine();
        }
    }
    1. Поддержка внедрения свойств для нескольких баз данных, использование: (подробности см. в модульных тестах)
public class TestRepository: BaseRepository<MongoModel, ObjectId>, IMongoRepository
    {
        [FromDbContextFactory("db1")]
        public IDbContextCore DbContext1 { get; set; }
        [FromDbContextFactory("db2")]
        public

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Быстрый фреймворк для разработки на DotNetCore с использованием Code First подхода на основе EF Core. Включает в себя DBContext, IOC компоненты autofac и AspectCore.Injector, генератор кода (также поддерживает DB First), кэш-компоненты на базе AspectCore для memcache и Redis, платёжную библиотеку на базе ICanPay и ряд повседневных методов и расш... Расширить Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://gitlife.ru/oschina-mirror/ceo_bitch-Zxw.Framework.NetCore.git
git@gitlife.ru:oschina-mirror/ceo_bitch-Zxw.Framework.NetCore.git
oschina-mirror
ceo_bitch-Zxw.Framework.NetCore
ceo_bitch-Zxw.Framework.NetCore
master