ABP框架记录
abp默认管理员:admin,密码:123qwe,这是写死的,xxx.Core\Authorization\Users\User.cs 行数:10
1.先在Core项目中建立模型
Models》Model.cs/ModelManager.cs
2.在Application中建立接口和具体类:
IModelAppService.cs
ModelAppService.cs
建立Dto和QueryInput类
ModelDto/ModelQueryInput
3.在EntityFramework的DbContext.cs类中,注册数据表,然后执行对应的migration命令更新数据库
查看所有接口
http://localhost:6234/api/AbpServiceProxies/GetAll?type=angular
swagger:http://localhost:6234/apis/index
多数据库:
abp框架多数据库:
A56.WMS.EntityFramework中:
增加:对应的 DbContext.cs
增加:对应的 /EntityFramework/Repositories/DbRepositoryBase.cs
增加:对应的 Migrations文件夹,在文件夹里增加 Configuration.cs
4.邮件发送:
xxx.EntityFramework项目中:Migrations/SeedData/DefaultSettingsCreator.cs中配置邮件服务:
public void Create()
{
#region Emailing
string mail_smtp = ConfigurationManager.AppSettings["mail_smtp"];
string mail_main = ConfigurationManager.AppSettings["mail_main"];
string mail_pwd = ConfigurationManager.AppSettings["mail_pwd"];
string mail_port = ConfigurationManager.AppSettings["mail_port"];
string mail_ssl = ConfigurationManager.AppSettings["mail_ssl"];
string mail_name = ConfigurationManager.AppSettings["mail_name"]; AddSettingIfNotExists(EmailSettingNames.DefaultFromAddress, mail_main);
AddSettingIfNotExists(EmailSettingNames.DefaultFromDisplayName, mail_name);
AddSettingIfNotExists(EmailSettingNames.Smtp.Port, mail_port);
AddSettingIfNotExists(EmailSettingNames.Smtp.Host, mail_smtp);
AddSettingIfNotExists(EmailSettingNames.Smtp.UserName, mail_main);
AddSettingIfNotExists(EmailSettingNames.Smtp.Password, mail_pwd);
AddSettingIfNotExists(EmailSettingNames.Smtp.Domain, "");
AddSettingIfNotExists(EmailSettingNames.Smtp.EnableSsl, mail_ssl);
AddSettingIfNotExists(EmailSettingNames.Smtp.UseDefaultCredentials, "false");
#endregion //Languages
AddSettingIfNotExists(LocalizationSettingNames.DefaultLanguage, "en");
}
然后 程序包管理器控制台 执行:update-database
nuget安装:AbpMailKit,然后在xxx.Core中找到 xxxCoreModule.cs
[DependsOn(typeof(AbpMailKitModule))] public class xxxCoreModule : AbpModule{}
一切ok,然后就是调用了,注意调用发送邮件的时候如果是多租户的话,记得设置请求的Header信息》 Authorization bearer ticket
public class TaskManager : IDomainService
{
private readonly IEmailSender _emailSender; public TaskManager(
IEmailSender emailSender,
ISmtpEmailSenderConfiguration smtpEmialSenderConfigtion
)
{
_emailSender = emailSender;
}
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="emailAddress">目标邮箱</param>
/// <param name="subject">邮件标题</param>
/// <param name="body">邮件内容</param>
public async void SendMail(string emailAddress, string subject, string body)
{
await _emailSender.SendAsync(
to: emailAddress,
subject: subject,
body: body,
isBodyHtml: true
);
}
}
https://www.cnblogs.com/LmuQuan/p/9122143.html
http://www.cnblogs.com/farb/p/ModuleZeroContent.html
http://www.cnblogs.com/farb/p/4849791.html
http://www.cnblogs.com/farb/p/modulezeroInstall.html
http://www.mamicode.com/info-detail-2320070.html
http://www.bubuko.com/infodetail-2594809.html
http://www.cnblogs.com/1zhk/p/5456389.html
https://www.cnblogs.com/farb/p/moduleZeroUserManagement.html
http://www.cnblogs.com/mienreal/p/4687789.html
AbpSession管理:http://www.cnblogs.com/mienreal/p/4561235.html
自定义过滤器:http://www.cnblogs.com/farb/p/ABPDataFilters.html
邮件文件:http://zhaokuohaha.github.io/2016/09/06/abp%E9%82%AE%E4%BB%B6/
https://www.cnblogs.com/Wddpct/p/5919507.html
ABP框架使用Mysql:
https://github.com/ABPFrameWorkGroup/AbpDocument2Chinese/blob/master/Markdown/Abp/9.4ABP%E5%9F%BA%E7%A1%80%E8%AE%BE%E6%96%BD%E5%B1%82-%E9%9B%86%E6%88%90EntityFrameworkMySql.md
https://www.cnblogs.com/ixysy/p/6219719.html
添加左侧菜单:https://blog.csdn.net/ysj1163620987/article/details/54909635
ABP入门系列(16)——通过webapi与系统进行交互:https://www.jianshu.com/p/d14733432dc2
ABP中文文档:https://github.com/ABPFrameWorkGroup/AbpDocument2Chinese/tree/master/Markdown
ABP模板下载:https://aspnetboilerplate.com/Templates
ABP框架记录的更多相关文章
- ABP框架踩坑记录
ABP框架踩坑记录 ASP.NET Boilerplate是一个专用于现代Web应用程序的通用应用程序框架. 它使用了你已经熟悉的工具,并根据它们实现最佳实践. 文章目录 使用MySQL 配置User ...
- 过滤掉Abp框架不需要记录的日志
该文章是系列文章 基于.NetCore和ABP框架如何让Windows服务执行Quartz定时作业 的其中一篇. 问题 ABP.WindowsService/Demo.MyJob/4.0.0该项目不仅 ...
- ABP框架实践基础篇之开发UI层
返回总目录<一步一步使用ABP框架搭建正式项目系列教程> 说明 其实最开始写的,就是这个ABP框架实践基础篇.在写这篇博客之前,又回头复习了一下ABP框架的理论,如果你还没学习,请查看AB ...
- ABP框架详解(三)Domain
此处的Domain主要指Abp类库根目录下Domain文件夹.顾名思义该目录下是用来存放与领域实体,领域逻辑执行,存储,领域服务相关的内容. 1.Entities (1)为整个Abp框架后期开发的所有 ...
- ABP框架实战 1.基础信息维护
在之前的一个开发项目中,因为公司战略发展,引用了这个ABP开源框架作为新项目的基础版本,由于客户的要求需要迁移旧系统数据,以及其他的一些原因,数据库采用了Oracle数据库管理.所以引用了Dapper ...
- 手工搭建ABP框架(1) - Web项目
为了防止不提供原网址的转载,特在这里加上原文链接: http://www.cnblogs.com/skabyy/p/7295533.html ABP是 ASP.NET Boilerplate Proj ...
- ABP框架个人开发实战(1)_环境搭建
前言 之前关注ABP框架有一阵子了,一直没有潜下心来实际研究一下.最近想自己建站,以后有自己的功能开发项目,可以在自己的站点上开发,并一步步的完善,所以找个比较好用的框架迫在眉睫,选来选去,决定用AB ...
- 后台工作者HangFire与ABP框架Abp.Hangfire及扩展
HangFire与Quartz.NET相比主要是HangFire的内置提供集成化的控制台,方便后台查看及监控,对于大家来说,比较方便. HangFire是什么 Hangfire是一个开源框架(.NET ...
- ABP框架展示异常信息
接触ABP框架有一段时间了,也遇到了一些问题,看了官网文档,但是或许是看的不够细致的原因,实际开发中还是遇到了一些问题,耗费了时间去处理,回头一看,原来文档中早已提及. 开发环境:ABP+MPA模式+ ...
随机推荐
- liunx vi 学习
vi有两种状态:命令态和编辑态 命令态中常用的命令: 上下左右移动的处理4个箭头外还有h(左),j(下),k(上),l(右) 调到屏幕显示的首行H,尾行L,x行:xG 0将光标移动到行首:$到行尾,M ...
- Java中的升序和降序
package ah; import java.util.Arrays; import java.util.Collections; import java.util.Comparator; impo ...
- 基于wepy和云开发的动漫资讯小程序----233次元
233次元小程序 # 233次元小程序 项目描述- 基于微信小程序的动漫咨询小程序,采用`wepy`框架开发:- 后台数据采用小程序的云开发存储: 线上体验 部分截图 ...
- Robot Framework 内置变量
转自:https://blog.csdn.net/qq_26886929/article/details/53907755 Robot Framework 内部提供了一下直接可用的内置变量 1. 操作 ...
- MySQL(进阶部分)
视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用. SELECT * FROM ( SEL ...
- 基础Gan代码解析
initializer总结: #f.constant_initializer(value) 将变量初始化为给定的常量,初始化一切所提供的值. #tf.random_normal_initializer ...
- ReactNative 学习笔记
1. react-native引入第三方库时报Command `run-android` unrecognized: 在使用第三方库tab-navigator时调用: npm install reac ...
- 关于Ajax异步请求(实时刷新)
1.需求:想要做成动态实时刷新获取数据库的值 2.例子 3.代码逻辑: <script type="text/javascript"> var Seconds=1000 ...
- codeblock 恢复默认字体设置
默认字体为:Courier New 我使用的codeblock版本为:17 .12. 今天我想调整一下codeblock的代码驱的字体,根据设置:settings->Editor->F ...
- Redis安全以及备份还原
启用密码 配置密码,配置文件中添加节点requirepass,如下root即passwordrequirepass root可以在登陆的时候用-a 指定password登陆,也可以不指定,登陆之后使用 ...