下面开始在我们的解决方案里面增加实体.

这一层我个人感觉是跟数据库的映射层次,有了这一层,各层访问数据库会方便很多,不然的话得用DataSet或DataReader的直接访问了。理解为持久化对象就ok了。

在这里我们开始使用动软.Net代码生成器,这个网上很多,想使用的下载就可以了,更好的是CodeSmith 只不过这个工具我们需要自定义模板。用代码生成器是为了我们自己一手写重复的代码,仅此而已。

安装好动软.Net代码生成器后,进入下面的界面:

首先在左边的树菜单新增服务器,如下:

选择下一步:

输入相对应的服务器,用户/密码,数据库,选择确定即可。然后在左侧新建好的服务器选择连接:

选择其中的info表:

选择单表代码生成器:

选择model,点击生成代码:

然后把生成的代码放到我们的解决方案里面即可,其他的表也是类似的操作。

注意由于很多项目中命名规则的问题,我们可能需要自定义模板,动软的代码生成器现在增加了模板,大伙可以研究下:

选择右边的模板管理下的代码模板(选择一个双击):

改动模扳生成的代码如下:

说到这里就得介绍下大名鼎鼎的CodeSmith 了,这框代码生成工具需要我们自己编写模板,然后根据我们自己的模板生成自己需要的代码:

这样的话灵活性很高,问题是我们需要学习下模板的编写,呵呵,好消息是模板同样是c#语言编写。

基本的实体类定义好以后,我们为了结果类,如下:

public class InfoResult

{

public int Code = 0;

public string Message = string.Empty;

}

这样我们就可以把自己定义好的业务操作信息和异常信息放到这个类中了,正常情况下,我们可以定义code=0 ,如果出现异常,我们可以把code定义为100,Message为:

InfoResult  result=new InfoResult  ()

result.Message = ex.Message + ex.StackTrace + ex.InnerException;

同时为了支持分页我们需要自己定义一个分页类:

public class PageInfo

{

public int startNum { get; set; }

public int endNum { get; set; }

public int Max { get; set; }

public int pageSize { get; set; }

public int pageIndex { get; set; }

}

为了得到查询列表我们需要类的组合:

比如:
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace InfoPub.Modal

{

public class SearchInfo

{

/// <summary>

/// infoname

/// </summary>

public string Infoname

{

get;

set;

}

/// <summary>

/// TypeId

/// </summary>

public int TypeId

{

get;

set;

}

/// <summary>

/// CreateId

/// </summary>

public int CreateId

{

get;

set;

}

/// <summary>

/// BeginDate

/// </summary>

public DateTime BeginDate

{

get;

set;

}

/// <summary>

/// EndDate

/// </summary>

public DateTime EndDate

{

get;

set;

}

public PageInfo pageInfo = new PageInfo();

}

public class InfoList

{

public PageInfo pageInfo = new PageInfo();

public InfoResult infoResult = new InfoResult();

public List<Info> infoList = new List<Info>();

}

}

转载于:https://www.cnblogs.com/wangzhanjianshe/archive/2011/07/23/2326407.html

[置顶]信息发布系统 Jquery+MVC架构开发(4)Model 层相关推荐

  1. [置顶]信息发布系统 Jquery+MVC架构开发(7) Controller层

    Controller 这一层首先要添加对WCF 的引用: 如下,输入我们自己的wcf地址 http://localhost:8732/Design_Time_Addresses/InfoPub.BLL ...

  2. 信息发布系统 Jquery+MVC架构开发(6)BLL层提供WCF 服务 .

    BLL层我们用wcf 来提供服务,这一层我们只对外只发布一个服务,为了使我们的代码可维护更好,我们引入抽象工厂模式. 这样的话我们首先也创建三个接口: 1)  IInfo InfoResult Add ...

  3. asp毕业设计—— 基于asp+access的软件信息发布系统设计与实现(毕业论文+程序源码)——软件信息发布系统

    基于asp+access的软件信息发布系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+access的软件信息发布系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需 ...

  4. 完成一个MVC+Nhibernate+Jquery-EasyUI信息发布系统

    一.最近学习了Jquery-EasyUI框架,结合之前用过的MVC3+Nhibernate做一个信息发布系统,对工作一年半的自己做一个总结吧!(也正好 供初学者学习!) 二.先上截图(系统简介),让大 ...

  5. 多媒体信息发布系统(此文档无参考价值,仅为共享此文档)

    多媒体信息发布系统 使用说明书 特点: 1.通过 Windows 桌面软件(CS 架构)管理终端,操 作简单.响应速度快.运行稳定 2.播放终端基于安卓系统,功能丰富.运行稳定 3.内容服务器分级部署 ...

  6. java计算机毕业设计即时高校信息发布系统源码+mysql数据库+系统+lw文档+部署

    java计算机毕业设计即时高校信息发布系统源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计即时高校信息发布系统源码+mysql数据库+系统+lw文档+部署 本源码技术栈: 项目架构 ...

  7. java ssm旅游景点景区门票预订及信息发布系统

    网络已经逐渐深入到人们生活的每一个角落,人们可以通过网络进行信息分享.在线交流.人们的生活也可以因为网络而丰富多彩,当互联网正式走进人们的生活的时候,它对传统的生活方式是一种颠覆,比如突破了地理上的限 ...

  8. keybest多媒体信息发布系统-信息发布系统-公共信息显示系统

    Keybest多媒体信息发布系统是基于B/S架构设计的网络智能多媒体信息发布系统-公共信息显示系统,授权用户通过浏览器访问方式登陆到管理软件进行操作,信息发布基于TCP/IP网络平台,实现分布式远程管 ...

  9. 发布系统的核心架构和功能设计

    我在分享<发布系统一定要注意用户体验>这个主题时,介绍了从用户体验的角度出发,设计一套发布系统的设计理念,以及具体实现.但是,用户体验设计得再好,后端系统无法支持,也就如同巧妇难为无米之炊 ...

最新文章

  1. linux下解压 cpio.gz格式文件
  2. 数组——寄包柜(洛谷 P3613)
  3. 数据分析师要会mysql_数据分析人员需要掌握sql到什么程度?
  4. Delphi中常用字符串处理函数
  5. 溯雪-轻博客PHP开源系统
  6. 2003-2019年全国30省市分地区能源消费结构数据集(煤炭占比)
  7. SwiftyJSON 如何使用
  8. HTML/CSS面试题(收集)
  9. 中国大学MOOC伦理学试题题库及答案
  10. 打开计算机任务栏有桌面没,如何解决Win7任务栏不显示打开的窗口的问题
  11. 《学会提问》读书笔记
  12. shell脚本——一键完成虚拟机初始化
  13. 小船过河问题解析(过度解析)
  14. Spring MVC的请求处理流程
  15. sqlite3 外键作用原理和使用方法
  16. 搜索引擎是如何最大化关键字广告收益的
  17. 前后端数据加解密的几种方式比较
  18. 百度快照优化推广五大坑
  19. HTML情人节表白代码,给女朋友的电子情书代码,女朋友表白代码
  20. java魔塔源代码_魔塔Java开源(素材+源码)

热门文章

  1. 初烧盲狙一条铁三角e40
  2. 【蓝桥杯省赛】冲刺练习题【动态规划】倒计时【08】天
  3. 实施工程师——实施中最核心的问题
  4. linux系统时间修改及同步
  5. linux中find查找命令的mtime参数使用方法说明
  6. Tensorflow-相关API-交叉熵
  7. 关于box-shadow、border-radius不兼容ie8的解决办法
  8. 【30集iCore3_ADP出厂源代码(ARM部分)讲解视频】30-9底层驱动之USART
  9. linux文件属性权限相关
  10. 分块读取Blob字段数据(Oracle)