五分钟完成 ABP vNext 通信录 App 开发

ABP vNext(后文简称Abp)是 Volo 公司堪称艺术品级的应用开发框架,它基于领域驱动设计(DDD)的思惟,创新地采用了模块化的设计。Abp 目前无疑是 ASP.NET Core 开发框架中最早进和最优雅的存在。笔者认为,凭借绝妙的模块化设计和丝滑的开发体验,Abp 有望超越 Spring 家族在历史上的影响力。git

模块开发与应用开发的关系

使用 Abp 框架,你能够提早制做一些功能模块,例如微信登陆、私信、博客、论坛等模块,将它们打包备用。在开发具体的 App 应用时,你能够轻松将模块安装到你的工程中,节省了大量的重复性工做。除了本身造轮子,你还能够在 NuGet 上安装由开源社区维护的模块,固然,社区也在等待你的贡献。github

五分钟完成通信录 App 开发

今天咱们不讲模块开发,而是从最简单的应用开发入手,笔者将遵循 Abp 最佳实践,带你体验如何在 5 分钟内,使用 Abp 框架开发一个通信录 App。数据库

第一步:使用 ABP CLI 生成项目

  1. 命令行安装 ABP CLI:dotnet tool install -g Volo.Abp.Cli微信

  2. 命令行生成通信录 App 项目:abp new AddressBook(将在当前目录中生成项目)app

第二步:建立“联系人”实体

在 Abp 中,联系人应为聚合根 AggregateRoot,详细请参考 Abp 官方手册对于领域驱动设计(DDD)的讲解。框架

  1. 新建 aspnet-core/src/AddressBook.Domain/Contacts 目录ide

  2. 在目录下手动建立 Contact.cs 文件模块化

public class Contact : AggregateRoot<Guid>
    {
        public virtual string Name { get; protected set; }
        
        public virtual string PhoneNumber { get; protected set; }
        
        public virtual string Address { get; protected set; }
        
        public virtual byte? Age { get; protected set; }
        
        public virtual DateTime? Birthday { get; protected set; }
        
        protected Contact() { }

        public Contact(
            Guid id,
            string name,
            string phoneNumber,
            string address,
            byte? age,
            DateTime? birthday) : base(id)
        {
            Name = name;
            PhoneNumber = phoneNumber;
            Address = address;
            Age = age;
            Birthday = birthday;
        }
    }
  1. 运行 Address.DbMigrator 项目,这是为了给数据库创建基础结构和数据

第三步:使用 AbpHelper 生成剩余代码

  1. 下载 AbpHelper GUI:https://github.com/EasyAbp/AbpHelper.GUI/releases工具

  2. 使用 Code Generator 功能,一键生成与 Contact 相关的全套代码:
    EntityCodeGenerator学习

若是你更习惯命令行操做,可使用 AbpHelper CLI:https://github.com/EasyAbp/AbpHelper.CLI

第四步:开发完毕

  1. 启动 AddressBook.Web 项目
    HomePage

  2. 登陆并使用通信录(admin 用户的默认密码是 1q2w3E*
    CreateContact
    ContactList

你必定注意到了,表单已被 abp-dynamic-form TagHelper 自动生成。另外,你只须要简单的修改本地化文件,就能显示出中文词汇,这里咱们不作演示。

后记

咱们的通信录项目自然包含:用户权限角色管理、多租户 SaaS 支持,若是你打算系统的学习 Abp 框架,请阅读官方手册:https://docs.abp.io

文中使用的 AbpHelper 是由国内爱好者建立的 EasyAbp 开源组织制做的开发工具集,能明显提升你的开发效率,而且彻底免费。此外,EasyAbp 还提供了不少实用的模块,了解更多:https://github.com/EasyAbp/EasyAbpGuide

下一节

在下一节中,笔者将会介绍,如何给通信录安装私信模块。此模块由 EasyAbp 组织开发并持续维护,你甚至能够在商业项目中无偿使用它。

原文地址:五分钟完成 ABP vNext 通信录 App 开发

相关文章
相关标签/搜索