zoukankan      html  css  js  c++  java
  • 01.Abp-Notes:控制台程序

    控制台程序

    创建Abp控制台程序

    • 新建项目
      新建一个控制台程序Kawe.Abp.Leaning.ConsoleClient
      通过Nuget,添加Volo.Abp引用

    • 创建模块
      新建一个类ConsoleClientModule,使其继承AbpModule

    using Microsoft.Extensions.DependencyInjection;
    using Volo.Abp.Modularity;
    
    namespace Kawe.Abp.Leaning.ConsoleClient
    {
        public class ConsoleClientModule : AbpModule
        {
    
           public override void ConfigureServices(ServiceConfigurationContext context)
            {
                //在此处注入依赖项
                context.Services.AddSingleton<IMyService,MyService>();
            }
        }
    }
    
    • IMyService和IMyService
    namespace Kawe.Abp.Leaning.ConsoleClient
    {
        public interface IMyService
        {
            void Run();
        }
    }
    
        public class MyService : IMyService
        {
            public void Run()
            {
                Console.WriteLine("Hello World!");
            }
        }
    
    • Main
    using System;
    using Volo.Abp;
    using Microsoft.Extensions.DependencyInjection;
    
    namespace Kawe.Abp.Leaning.ConsoleClient
    {
        class Program
        {
            static void Main(string[] args)
            {
                using (var application = AbpApplicationFactory.Create<ConsoleClientModule>())
                {
                    application.Initialize();
    
                    var myService = application.ServiceProvider.GetService<IMyService>();
                    myService.Run();
    
                    Console.WriteLine("Press ENTER to stop application...");
                    Console.ReadLine();
    
                    application.Shutdown();
                }
            }
        }
    }
    
    • 通过Application来加载启动模块

    • 通过模块化封装模块本身的行为与依赖

    • Application接替整个应用程序的生命周期、启动、初始化、卸载

    • 通过模块化模块内的行为和依赖注入到全局application的DI容器中

    • 输出

    Hello World!
    Press ENTER to stop application...
    
  • 相关阅读:
    oracle_case when
    sql记录
    修改tomcat默认编码
    sql server_TED(透明数据加密)
    web请求过程
    freemarker 标签循环list 以及获取下标值
    鼠标操作
    窗口切换
    日历控件
    xpath定位
  • 原文地址:https://www.cnblogs.com/easy5weikai/p/13958422.html
Copyright © 2011-2022 走看看