从零开始学习ABP vNext开发 (一)——从控制台项目入手

在系列文章《从零开始进行ABP项目开发》中,介绍了从零开始基于ASP.NET Boilerplate (ABP)进行项目开发。 ABP vNext是ASP.NET Boilerplate 的下一代框架,是基于.Net Core的全新架构。本系列文章介绍从头开始创建ABP vNext项目。

首先使用Visual Studio 2019创建一个.Net Core 控制台项目,为了方便与《从零开始进行ABP项目开发》所创建的项目进行比较,将这个新的项目命名为ZL.AbpNext.Poem.ConsoleClient,项目中的类名尽量保持一致:


图片.png

我们将解决方案命名为ZL.AbpNext.Poem。

创建Abp模块

进入Nuget程序包管理器,搜索Volo.Abp并安装。


图片.png

然后,可以创建第一个Abp的模块PoemConsoleClientModule:

using Volo.Abp.Modularity;

namespace ZL.AbpNext.Poem.ConsoleClient
{
    public class PoemConsoleClientModule:AbpModule
    {

    }
}

创建Service

然后创建Service类:

using Volo.Abp.DependencyInjection;

namespace ZL.AbpNext.Poem.ConsoleClient
{
    public class Service : ITransientDependency
    {
        public void Run()
        {
            Console.WriteLine("你好");
        }
    }
}

修改Program:

using System;
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp;

namespace ZL.AbpNext.Poem.ConsoleClient
{
    class Program
    {
        static void Main(string[] args)
        {
            using (var application = AbpApplicationFactory.Create<PoemConsoleClientModule>())
            {
                application.Initialize();

                //Resolve a service and use it
                var service =
                    application.ServiceProvider.GetService<Service>();
                service.Run();

                Console.WriteLine("Press ENTER to stop application...");
                Console.ReadLine();
            }
        }
    }
}

运行项目:


图片.png

与上一代的ABP项目进行比较,我们会发现:

  • 到目前为止,程序的框架结构大体相同
  • 模块的初始化简化了
  • 依赖注入调用方式简化了
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。