基于ABP做一个简单的系统——实战篇:1.项目准备
现阶段需要做一个小项目,体量很小,业务功能比较简单,就想到用最熟悉的.net来做,更何况现在.net core已经跨平台,也可以在linux服务器上部署。所以决定用.net core 3.1+mysql。为了起步更容易,用最新的abpV3(2020.6.4)来写,这样管理端也有了,api也有了,上手速度极快。不用最新的volo.abp的原因是,感觉,恩,纯粹是感觉,才更新到2.9版本,怕项目过程中遇到坑比较耗时间解决,就还是用原来的abp吧。
之前用abp写微服务框架的时候,.net core还处于2.1版本,现在已经都已经到3.1了。我的想法是基于.net core 3.1版本的abp,重新理一遍abp的相关知识,项目完成后把公共部分抽取出来开源。当然现在需求已经整理的差不多了,马上就要开始编码了。是不是少了点什么?恩,代码生成器,不管怎么样开发这种业务系统,代码生成器是必需品,不然手工重复的创建文件,复制粘贴,修改命名能把人整死。所以期间我也会把代码生成器发布出来,并等待合适的时机开源(主要是我好多年前写的东西,需要优化一下代码结构)
整个项目流程:后台框架选型->需求分析->原型设计->管理系统编码->小程序端编码
第一天,从官网下载了模板,先把他从sql server改为mysql,这个我在另一个博客已经写过一遍,下次搬过来。
这次遇到几个问题:
1.因为一开始没有mysql服务器,就用mssql做测试,结果一直GetAll接口报错
先查看日志:
'OFFSET' 附近有语法错误。
在 FETCH 语句中选项 NEXT 的用法无效。
关键字 'AS' 附近有语法错误。
想到数据库版本是mssql 2008 r2,可能是语法不被支持。后来看到这篇文章,猜想得到验证。
https://www.cnblogs.com/Zev_Fung/p/12034658.html
2.改为mysql后一直提示
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'datetime2(6) NOT NULL,
`CreatorUserId` bigint NULL,
`DeleterUserId` bi' at line 3
解决方法是:把migrations文件夹下所有文件都要删除再add-migration,update-database,一开始没注意ModelSnapshot这个文件,一定要把这个也删掉,坑了我好久。
最新文章
- PHP图片裁剪类
- 在Android中使用Java 8的lambda表达式
- HDU 5842 Lweb and String(Lweb与字符串)
- javascript中怎样验证密码是否含有特殊符号、数字、大小写字母,长度是否大于6小于12
- KM算法
- 再析在spring框架中解决多数据源的问题
- ZOJ 2477 Magic Cube 暴力,模拟 难度:0
- Unity3D Persistent Storage
- Linux 进程管理剖析--转
- Detect combined string
- input 标签左对齐
- how to download image from any web page in java 下载图片
- LeetCode OJ 95. Unique Binary Search Trees II
- chkdsk
- CSS小技巧-怎样让每行多余的文字显示文省略号?
- java 单元测试教程(junit)
- 基于python脚本,实现Unity全平台的自动打包
- ubuntu18.04安装spark(伪分布式)
- CentOS 离线安装 MYSQL+APACHE+PHP
- 回客科技 面试的 实现ioc 容器用到的技术,简述BeanFactory的实现原理,大搜车面试的 spring 怎么实现的依赖注入(DI)
热门文章
- 关于Nginx参数路径问题的问题
- VST的安装
- 3.4 Go字符型
- 虚拟机安装配置(VMware与CentOS安装)
- zz 通过INFORMATION_SCHEMA.INNODB_TRX、INNODB_LOCKS、INNODB_LOCK_WAITS 三个表获取事务与锁的信息
- apache slowloris mod_antiloris for Apache httpd 2.2 / 2.4
- 分布式应用程序协调服务 ZooKeeper
- iOS 的尾调用优化原理
- 如何在npm发布轮子
- [JavaWeb基础] 023.线程安全(二)