mvc+webapi+dapper+ef codefirst项目搭建
首先项目是mvc5+webapi2.0+orm数据处理(dapper)+ef动态创建数据库。
1.项目框架层次结构:
mvc项目根据不同的业务和功能进行不同的区域划分【今后项目维护起来方便】,model数据结构和mvc传递model进行区分【保证数据结构不外漏】,webapi包括接口定义和 接口的实现,业务逻辑的处理。其中数据处理单独放在webapi之外的类库里面。
2.命名规范
以上大致是文件夹与类库的命名。其中业务和功能以三个字母进行命名。
以上为区域命名
3.开发规则与技巧
《一》命名空间的处理
所有相同业务的功能模块保持一致,好处在类库互相引用的时候不用写using
《二》数据处理
1.orm(内部封装的方法与dapper原始方法相结合)+sql语句相结合。
2.3个(包括3个)以下传递参数,但是进行对象操作
3.修改状态用state=1-state,【不用传状态参数,只需传id即可】。
4.业务,功能分离尽量避免多表操作。【处理方便,业务清晰,实现容易】
5.数据处理出business进行数据结构处理,apiservice进行数据结构model和viewmodel(暂时叫这个名字吧)。【避免数据结构让客户获得。】
6.所有webapi接口均为post接口
《三》部分代码分析
(一)wx.web.fee.apis
(二)wx.web.fee.apicontroller
(三)wx.web.fee.apiservice
(四)wx.web.fee.business
(五)wx.web.fee.mvc
(六)bin
(七)mvc引用apibin文件
(八)
mvc+webapi+dapper+ef codefirst项目搭建的更多相关文章
- freemarker + spring mvc + spring + mybatis + mysql + maven项目搭建
今天说说搭建项目,使用freemarker + spring mvc + spring + mybatis + mysql + maven搭建web项目. 先假设您已经配置好eclipse的maven ...
- IOC+EF+Core项目搭建EF封装(一)
添加应用Microsoft.EntityFrameworkCore:Microsoft.EntityFrameworkCore.Design:Microsoft.EntityFrameworkCore ...
- 1-6 WebAPI基础和演示项目搭建
启动项目的时候 在控制台用dotnet MsgService.dll的方式启动. 在program.cs文件下做如下修改: 实现在控制台 自定义ip和端口,修改之后有将项目重新生成,在控制台启动项目, ...
- IOC+EF+Core项目搭建IOC注入及框架(二)
配置ServiceCollection /// <summary> /// 表示IServiceCollection的扩展 /// </summary> public stat ...
- .net MVC, webAPI,webForm集成steeltoe+springcloud实现调用服务中心服务的总结
开始之前,如果没接触过Autofac的,可以移步到Autofac官方示例学习一下怎么使用:https://github.com/autofac/Examples .net 下集成steeltoe进行微 ...
- mvc+webapi 项目架构
首先项目是mvc5+webapi2.0+orm-dapper+ef codefirst+redis+quartz.net+actionmq. 1.项目框架层次结构: 这个mvc项目根据不同的业务和功能 ...
- 项目架构mvc+webapi
mvc+webapi 项目架构 首先项目是mvc5+webapi2.0+orm-dapper+ef codefirst. 1.项目框架层次结构: 这个mvc项目根据不同的业务和功能进行不同的区域划分, ...
- 新年奉献MVC+EF(CodeFirst)+Easyui医药MIS系统
本人闲来无事就把以前用Asp.net做过的一个医药管理信息系统用mvc,ef ,easyui重新做了一下,业务逻辑简化了许多,旨在加深对mvc,ef(codefirst),easyui,AutoMap ...
- 新年奉献MVC+EF(CODEFIRST)+EASYUI医药MIS系统(转)
出处:http://www.cnblogs.com/chenlinzhi/p/4332628.html 本人闲来无事就把以前用Asp.net做过的一个医药管理信息系统用mvc,ef ,easyui重新 ...
随机推荐
- WinCE隐藏显示任务栏,当任务栏隐藏时将其显示,当任务栏显示时将其隐藏(FindWindow,ShowWindow,IsWindowVisible),
HANDLE hWndTaskBar = ::FindWindow(TEXT("HHTaskBar"), NULL); if(::IsWindowVisible(hWndTask ...
- 经常使用Firefox插件大全
Web开发者经常使用的火狐插件 1)FireShot:是一个截图工具,来源于截图软件Screenshot Studio的开发商,是一个Firefox扩展或者说是Firefox版的Screenshot ...
- mysql增量ID
启动值更改方法
在mysql很多朋友感到场AUTO_INCREMENT增量型ID值它不能被改变,其实这种认识是错误的,这里mysql增量ID开始值更改和设置. 设置自动递增字段的通常的方法: 格时加入: create ...
- 组队赛第二场:字符串哈希+DP
长春现场赛 HDU 4821 思路:这题周赛的时候没做出来,有点可惜了.要是当时记起来unsigned long long自己主动取模,然后提醒一下大帝的话,后续大帝就能过了. 唉,导致让他取了好多 ...
- Learning Cocos2d-x for WP8(8)——动作Action
原文:Learning Cocos2d-x for WP8(8)--动作Action 游戏很大程度上是由动作画面支撑起来的. 动作分为两大类:瞬间动作和延时动作. 瞬间动作基本等同于设置节点的属性,延 ...
- Top 10 Mistakes Java Developers Make(转)
文章列出了Java开发者最常犯的是个错误. 1.将数组转换为ArrayList 为了将数组转换为ArrayList,开发者经常会这样做: ? 1 List<String> list = A ...
- A First Exploration Of SolrCloud
A First Exploration Of SolrCloud Update: this article was published in August 2012, before the very ...
- Cantor的数表 【找规律】
小俞同学,近期勤学苦练数学,对一种数表产生了兴趣. 数表例如以下: 1/1 1/2 1/3 1/4 1/5 2/1 2/2 2/3 2/4 3/1 3/2 3/3 4/1 4/2 5/1 她冥思苦相了 ...
- sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
在使用Hibernate的J2EE项目中,莫名其妙出现如上错误,既不报错,也不运行不论什么输出測试代码,更不返回结果. 经过排查,在方法里面引用的实体类和其映射文件属性个数不一致. 改动一致后,即解决 ...
- LeetCode: Unique Binary Search Trees [095]
[题目] Given n, how many structurally unique BST's (binary search trees) that store values 1...n? For ...