首页 > 其他分享 >SimplCommerce 核心

SimplCommerce 核心

时间:2023-01-17 17:23:45浏览次数:34  
标签:optionsAction Microsoft 核心 System SimplCommerce using public

  • EF配置
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;

namespace SimplCommerce.Module.Core.Extensions
{
    /// <summary>
    /// EF配置
    /// </summary>
    public class EFConfigSource : IConfigurationSource//Microsoft.Extensions.Configuration
    {
        private readonly Action<DbContextOptionsBuilder> _optionsAction;

        public EFConfigSource(Action<DbContextOptionsBuilder> optionsAction)
        {
            _optionsAction = optionsAction;
        }

        public IConfigurationProvider Build(IConfigurationBuilder builder)
        {
            return new EFConfigProvider(_optionsAction);
        }
    }
}

using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;

namespace SimplCommerce.Module.Core.Extensions
{
    
    public static class EFConfigurationProviderExtension
    {
        public static IConfigurationBuilder AddEntityFrameworkConfig(this IConfigurationBuilder builder, Action<DbContextOptionsBuilder> setup)
        {
            return builder.Add(new EFConfigSource(setup));
        }
    }
}

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;

namespace SimplCommerce.Infrastructure.Modules
{
    /// <summary>
    /// 模块配置管理器
    /// 从 modules.json 文件中读取模块-->实体嘞ModuleInfo
    /// </summary>
    public class ModuleConfigurationManager : IModuleConfigurationManager
    {
        public static readonly string ModulesFilename = "modules.json";

        /// <summary>
        /// 从 modules.json 文件中读取模块-->实体嘞ModuleInfo
        /// </summary>
        /// <returns></returns>
        public IEnumerable<ModuleInfo> GetModules()
        {
            var modulesPath = Path.Combine(GlobalConfiguration.ContentRootPath, ModulesFilename);
            using var reader = new StreamReader(modulesPath);
            string content = reader.ReadToEnd();
            dynamic modulesData = JsonConvert.DeserializeObject(content);
            foreach (dynamic module in modulesData)
            {
                yield return new ModuleInfo
                {
                    Id = module.id,
                    Version = Version.Parse(module.version.ToString()),
                    IsBundledWithHost = module.isBundledWithHost
                };
            }
        }
    }
}

标签:optionsAction,Microsoft,核心,System,SimplCommerce,using,public
From: https://www.cnblogs.com/walterwhite/p/17058323.html

相关文章

  • ifc 4x3核心层
    ifc4x3核心层核心数据模式在IFC模式架构中建立了最通用的层,如蓝色突出显示的。此层中定义的实体可以由层次结构中的所有实体引用和专门化。核心层为特定方面模型中的所有......
  • 分布式核心,中电金信获数字化转型突出贡献奖!
    近日,由《金融电子化》杂志社主办的“2022中国金融科技年会暨第十三届金融科技应用创新奖颁奖典礼”成功举办。中电金信“基于全栈创新技术的银行分布式核心系统”经过层层遴......
  • RK3568工业级核心板高温运行测试
    Rockchip RK3568 是一款通用型MPU,产品集成GPU、NPU,支持4K、HDMI、LVDS、MIPI、PCIe3.0、USB3.0、千兆以太网、CAN-BUS、UART等丰富外设接口。 RK3568的高温工作情况如何......
  • RK3568工业级核心板高温运行测试
    Rockchip RK3568 是一款通用型MPU,产品集成GPU、NPU,支持4K、HDMI、LVDS、MIPI、PCIe3.0、USB3.0、千兆以太网、CAN-BUS、UART等丰富外设接口。 RK3568的高温工作情况如何......
  • java核心技术之 ArrayList应用 【职员薪水管理系统】
    职员薪水管理系统需求如下:/***author:kevin*date:20110-7-15*function:useArrayListtobuildasystemofEmployeeSalaryMangement,*thesystemisusefulformana......
  • MES系统的八大核心要素
    MES(manufacturingexecutionsystem)系统即制造执行系统,是面向车间生产的管理系统。MES国际联合会(MESAInternational)对MES的定义为:在产品从工单发出到成品完工的过程......
  • 走进AI图像生成核心技术 - Diffusion
    编者按:2022年,Diffusionmodel成为图像生成领域的重要发现,推动了AI绘画应用的爆发式发展。Diffusion模型相较于其他的图像生成模型,在所需数据更少的背景下,图像生成效果有......
  • 快速学习Flex布局的核心知识技能
    Author:博哥  Time:2023-01-14该文章对应的视频教程去B站观看视频教程一.准备工作1.1创建index.html编写如下代码<!DOCTYPEhtml><htmllang="en"><head>......
  • SpringBoot——核心原理入门
    SpringBoot概述BuildAnythingwithSpringBoot:**SpringBootisthestartingpointforbuildingallSpring-basedapplications.SpringBootisdesignedtoget......
  • MC群组服开服教程系列二: 核心端搭建
    核心端的选择市面上的核心端还是比较多的。这里简单列举几个比较知名的。官方核心MinecraftServer是Mojang官方制作的原版服务端,更新非常快,基本上和Minecraft客......