没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
ASP.NET MVC5 网站开发框架模型、数据存储、业务逻辑(三)网站开发框架模型、数据存储、业务逻辑(三)
上次搭建好了项目框架,但还是觉得不太对劲,后来才想起来没有对开发目标进行定位,这个小demo虽然不用做需求分析,但是要实
现什么效果还得明确。后来想了一下就做个最简单的网站,目标定为小公司进行展示用的网站。功能有显示用的文章功能,咨询留言,
评论等
前面项目的层次和调用关系都说明了,关系如下图
采用三层架构的时候,研究过BLL层的必要性,觉得业务逻辑完全可以在controller里实现,没有必要单独做一个项目,另一个分层多了会影响性能。后
来我还是把业务逻辑独立出来,原因如下:
业务逻辑写进controller里代码看着比较混乱,时间久了代码容易理不清。
在controller里直接写逻辑重复代码会不较多,开发效率低。
分项目有利于代码重用,有时候可以直接拿到其他项目中稍作修改就可以用。
对于性能我觉得分层多了肯定会有影响,但是不会很大。现在硬件的更新速度远大于软件,对业务逻辑处理起来很轻松,多实例化几个类对性能影响不
大。一般来说网站运行基本上是一个存数据库和取数据库的过程,业务逻辑还是比较少,只不过现在的网站使用的图片、动画更多,效果更加绚丽。我
觉得网站的效率瓶颈主要出现在服务器的带宽、IO性能和存取数据库上。在代码方面能做的就是优化数据库的存取。对了一般项目来说,为了百分之几
的运行效率远不如提高开发效率和更加容易的代码管理重要,能实现需求就好,运行效率是哪是大牛要做的事。
对IDAL、DAL、IBLL 、BLL这四个项目:
IDAL写一个Base接口,接口中固定几个数据库操作方法,其他接口都继承自这个接口;
DAL项目做个base类实现这个IDAL的base接口,其他类都继承自base类。
同样IBLL中也写一个Base接口,固定几个基本的操作方法,同样其他接口也继承自这个base接口
IBLL中也写一个base类来实现IBLL中的base接口,其他类继承自这个base类。
这里以对用户的操作来构建代码的基本模式:
一、模型一、模型
这里写三个模型类。打开Ninesk.Models分别添加User、UserGroup、UserConfig三个模型类。
1、用户模型、用户模型—User类类
用户模型或者叫账户模型,为什么这么说看下面代码
using System;
using System.ComponentModel.DataAnnotations;
namespace Ninesky.Models
{
/// <summary>
/// 用户模型
/// <remarks>
/// 创建:2014.02.02<br />
/// 修改:2014.02.05
/// </remarks>
/// </summary>
public class User
{
[Key]
public int UserID { get; set; }
/// <summary>
/// 用户名
/// </summary>
[Required(ErrorMessage="必填")]
[StringLength(20,MinimumLength=4,ErrorMessage="{1}到{0}个字符")]
[Display(Name="用户名")]
public string UserName { get; set; }
/// <summary>
/// 用户组ID
/// </summary>
[Required(ErrorMessage = "必填")]
[Display(Name = "用户组ID")]
public int GroupID { get; set; }
/// <summary>
/// 显示名
/// </summary>
[Required(ErrorMessage = "必填")]
[StringLength(20, MinimumLength = 2, ErrorMessage = "{1}到{0}个字符")]
[Display(Name = "显示名")]
public string DisplayName { get; set; }
/// <summary>
/// 密码
/// </summary>
[Required(ErrorMessage = "必填")]
[Display(Name = "密码")]
[DataType(DataType.Password)]
public string Password { get; set; }
/// <summary>
/// 邮箱
/// </summary>
[Required(ErrorMessage = "必填")]
资源评论
weixin_38553431
- 粉丝: 6
- 资源: 897
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 已过基于Hadoop+Spark招聘推荐可视化系统 大数据项目 毕业设计(源码下载)
- python爬虫开发题答案及题目-100(1).zip
- Python 小游戏 (贪吃蛇、五子棋、扫雷、俄罗斯方块)-3 (2).zip
- c语言实现的数独小游戏.zip
- 高德地图中国行政区划省、市、县经纬度
- March 2024 Expiration Of The OAM Out Of The Box Certificates
- 二叉搜索树迭代器(java代码).docx
- 解决keil MDK 5.38版本 在Debug配置使用STlink调试时软件闪退的问题
- py小项目:用户登录和注册系统开发欢迎图片
- TCCEE-x64-v6.2.3(9.51)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功