ABP开发说明,通过分类管理完成前后代码
浏览:947 次

ABP开发说明(2018-7-25开始)
从7月25日起,我们开始使用5.4版本的asp net zero进行最简单的分类管理和上传图片。我们将看到从学习到完成需要多长时间
因为我工作太忙,所以我花时间偶尔做一下。最后,在我完成这个功能两个月后,时间是9.25。
=============================================================================================
根据官方教程构建项目后,假设项目名称为Relyto.CoreERP
我按照正常步骤完成了一个mvc页面。当我第一次使用这个框架时,因为我没有完全阅读官方文件,所以当我拿着它时,我打开了它。我对整体架构不熟悉。我必须在每个步骤的不同项目文件夹之间切换。我经常找不到哪里可以添加内容。因此,本文档描述了在该过程的每个步骤中要操作的项目或文件。执行此操作时,应注意以下项目后缀,该后缀对应于原始项目结构。
#2018-7-25
#1.在NamespaceRelyto.CoreERP下创建一个实体。核心项目,创建一个新文件夹Channel,然后创建一个实体
需要添加以下命名空间:
使用Abp.Domain.Entities;
使用Abp.Domain.Entities.Auditing;
使用System.ComponentModel.DataAnnotations;
使用System.ComponentModel.DataAnnotations.Schema;
要更改与类对应的表名,请在类类之前添加以下注释:
[表格(“cmn_channelinfo”)]
例子:
[表格(“cmn_channelinfo”)]
公共类ChannelInfo:FullAuditedEntity、IMustHaveTenant
{}
对于多租户,实现IMustHaveTenant并添加以下语句
public int TenantId{get;set;}
#2.添加到DbContext Relyto。CoreERP修改了EntityFrameworkCore项目下的EntityFrameworkCore文件夹:AbpZeroTemplateDbContext.cs
添加命名空间:使用Relyto.CoreERP.Channel;
在下面的命令行中添加一行代码,以将此表结构生成到数据库中:
公共虚拟DbSet<ChannelInfo>ChannelInforms{get;set;}
在包管理器控制台上,首先选择项目Relyto.CoreERP。EntityFrameworkCore,然后执行以下命令:
添加迁移“添加通道信息”

更新数据库
,然后检查数据库。它应该生成
#3.应用层Relyto。CoreERP在app项目3.1 IChannelInfoAppService下创建ChannelInfo文件夹
使用Abp.Application.Services;
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Text;
使用System.Threading.Tasks;
使用Relyto.CoreERP.Channel;
使用Relyto.CoreERP.Channel.Dtos;
使用Abp.Application.Services.Dto;
命名空间Relyto.CoreERP.Channel
{
公共接口IChannelInfoAppService:IApplicationService
{
任务
系统线程任务。任务创建(CreateChannelInfoInput输入);
}
}
创建一个Dtos文件夹并为Get和Create方法生成参数类
3.2频道信息列表
使用Abp.Application.Services.Dto;
使用Abp.AutoMapper;
使用系统;
使用System.Collections.Generic;
使用System.Linq;

使用System.Text;
使用System.Threading.Tasks;
使用Relyto.CoreERP.Channel;
使用Relyto.CoreERP.SharedEnum;
命名空间Relyto.CoreERP.Channel.Dtos
{
[自动映射自(类型(通道信息))]
公共类ChannelInfoListDto:FullAuditedEntityDto
{
公共字符串标题{get;set;}
公共字符串说明{get;set;}
公共字符串SubTitle{get;set;}
公共字符串ChannelCode{get;set;}
公共字符串EnglishName{get;set;}
公共字符串ImageUrl{get;set;}
公共短信道索引{get;set;}
public int ParentID{get;set;}
公共EnumState状态{get;set;}
公共bool IsLastNode{get;set;}
}
}
3.3获取所有通道信息输入
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Text;
使用System.Threading.Tasks