zoukankan      html  css  js  c++  java
  • abp core版本添加额外应用层

    1.新建类库WebProject.Application.App

    2.添加WebProjectApplicationAppModule.cs

    3.注册模块

    using Abp.Application.Services;
    using Abp.AutoMapper;
    using Abp.Configuration.Startup;
    using Abp.Modules;
    using Abp.Reflection.Extensions;
    using System.Reflection;
    using WebProject.Authorization;
    
    namespace WebProject
    {
        [DependsOn(
            typeof(WebProjectCoreModule), 
            typeof(AbpAutoMapperModule))]
        public class WebProjectApplicationAppModule : AbpModule
        {
            
    
            public override void Initialize()
            {
                var thisAssembly = typeof(WebProjectApplicationAppModule).GetAssembly();
    
                IocManager.RegisterAssemblyByConvention(thisAssembly);
    
                Configuration.Modules.AbpAutoMapper().Configurators.Add(
                    // Scan the assembly for classes which inherit from AutoMapper.Profile
                    cfg => cfg.AddProfiles(thisAssembly)
                );
                
            }
        }
    }

    4.在WebProject.Web.Core项目中的WebProjectWebCoreModule.cs中添加依赖和设置生成webapi

    using System;
    using System.Text;
    using Microsoft.AspNetCore.Hosting;
    using Microsoft.Extensions.Configuration;
    using Microsoft.IdentityModel.Tokens;
    using Abp.AspNetCore;
    using Abp.AspNetCore.Configuration;
    using Abp.AspNetCore.SignalR;
    using Abp.Modules;
    using Abp.Reflection.Extensions;
    using Abp.Zero.Configuration;
    using WebProject.Authentication.JwtBearer;
    using WebProject.Configuration;
    using WebProject.EntityFrameworkCore;
    
    namespace WebProject
    {
        [DependsOn(
             typeof(WebProjectApplicationModule),
            typeof(WebProjectApplicationAppModule),  //添加依赖
             typeof(WebProjectEntityFrameworkModule),
             typeof(AbpAspNetCoreModule)
            ,typeof(AbpAspNetCoreSignalRModule)
         )]
        public class WebProjectWebCoreModule : AbpModule
        {
            private readonly IHostingEnvironment _env;
            private readonly IConfigurationRoot _appConfiguration;
    
            public WebProjectWebCoreModule(IHostingEnvironment env)
            {
                _env = env;
                _appConfiguration = env.GetAppConfiguration();
            }
    
            public override void PreInitialize()
            {
                Configuration.DefaultNameOrConnectionString = _appConfiguration.GetConnectionString(
                    WebProjectConsts.ConnectionStringName
                );
    
                // Use database for language management
                Configuration.Modules.Zero().LanguageManagement.EnableDbLocalization();
    
                Configuration.Modules.AbpAspNetCore()
                     .CreateControllersForAppServices(
                         typeof(WebProjectApplicationModule).GetAssembly()
                     );
           //设置生成webapi Configuration.Modules.AbpAspNetCore().CreateControllersForAppServices(
    typeof(WebProjectApplicationAppModule).Assembly, moduleName: "cline", useConventionalHttpVerbs: true); ConfigureTokenAuth(); } private void ConfigureTokenAuth() { IocManager.Register<TokenAuthConfiguration>(); var tokenAuthConfig = IocManager.Resolve<TokenAuthConfiguration>(); tokenAuthConfig.SecurityKey = new SymmetricSecurityKey(Encoding.ASCII.GetBytes(_appConfiguration["Authentication:JwtBearer:SecurityKey"])); tokenAuthConfig.Issuer = _appConfiguration["Authentication:JwtBearer:Issuer"]; tokenAuthConfig.Audience = _appConfiguration["Authentication:JwtBearer:Audience"]; tokenAuthConfig.SigningCredentials = new SigningCredentials(tokenAuthConfig.SecurityKey, SecurityAlgorithms.HmacSha256); tokenAuthConfig.Expiration = TimeSpan.FromDays(1); } public override void Initialize() { IocManager.RegisterAssemblyByConvention(typeof(WebProjectWebCoreModule).GetAssembly()); } } }
  • 相关阅读:
    vue项目中npm安装sass,less,stylus
    jQueryniceScroll滚动条错位问题
    基于github发布 个人网站/博客
    【转载】预处器的对比——Sass、LESS和Stylus
    元素,布局方式,BFC和清除浮动
    使用git向github中添加项目并更新(备忘录)
    nginx 之 grok 过滤
    gitlab 同步小脚本
    svn同步小脚本
    使用pip命令自动生成项目安装依赖清单
  • 原文地址:https://www.cnblogs.com/lkd3063601/p/10683072.html
Copyright © 2011-2022 走看看