OL.FrameCore.WebUI/Startup.cs

(开头部分) 7KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Reflection;
using System.Runtime.Loader;
using System.Threading.Tasks;
using Autofac;
using Autofac.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Authentication.Cookies;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using OL.FrameCore.Application;
using OL.FrameCore.Infrastructure.Code;
using OL.FrameCore.Infrastructure.UnitOfWork;
using OL.FrameCore.Repository.EF;
using OL.FrameCore.WebUI.Code;
using UEditorNetCore;

namespace OL.FrameCore.WebUI
{
    public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }
        //public Autofac.IContainer ApplicationContainer { get; private set; }
        //autofac 新增
        public void ConfigureContainer(ContainerBuilder containerBuilder)
        {
            //containerBuilder.RegisterModule<ConfigureAutofac>();

            //containerBuilder.RegisterType<UserService>().As<IUserService>();

            var baseType = typeof(IAutoInject);
            var assemblyApplication = AssemblyLoadContext.Default.LoadFromAssemblyName(new AssemblyName("OL.FrameCore.Application"));
            var assemblyDomain = AssemblyLoadContext.Default.LoadFromAssemblyName(new AssemblyName("OL.FrameCore.Domain"));
            var assemblyRepository = AssemblyLoadContext.Default.LoadFromAssemblyName(new AssemblyName("OL.FrameCore.Repository.EF"));
            containerBuilder.RegisterAssemblyTypes(assemblyApplication, assemblyDomain, assemblyRepository).AsImplementedInterfaces();

            var controllersTypesInAssembly = typeof(Startup).Assembly.GetExportedTypes()
.Where(t => baseType.IsAssignableFrom(t) && t != baseType).ToArray();
            containerBuilder.RegisterTypes(controllersTypesInAssembly).PropertiesAutowired();
        }

        public static readonly ILoggerFactory efLogger = LoggerFactory.Create(builder =>
        {
#if DEBUG
            builder
            .AddFilter((category, level) => category == DbLoggerCategory.Database.Command.Name && level == LogLevel.Information)
后面还有 114 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。