我的 ASP.NET MVC2 学习笔记<一>:Index页面的数据显示

以前一直做WinForm桌面应用开发,所以对MVC 也是这几天的了解。

传统三层是架构,MVC 是展示模式, MVC相当于UI层,只是把UI层再次进行了分解。

我用的是一个传统的三层架构+MVC2 来做的一个增删改 的示例。其中传统三层为了方便(懒省事),把其中的BLL层搞掉了。具体看下面项目的目录结构图:

简单说下里面要用到的几个文件:DAL、DataAcc、Model这几个都是代码生成器生成的,Controllers控制器、Views视图页面。在这个项目中传统三层的M和MVC中的M,我合并到一起都放到了传统三层的M中了。

介绍完文件,再说下这几个文件的调用关系 Views ->Controllers ->DAL ->DataAcc ->数据库 其中我理解的 Model在这里面是一个数据载体, 所以没有放到关系里面,哪里需要哪里调。

声明:以下展示的页面没有做任何美化操作,只看展示结果。

开始贴代码吧:

首页是控制器中的 初始化页面Index

public class EmpInfoController : Controller

{

WLsys.DAL.Fm_EmpInfo dalemp = new WLsys.DAL.Fm_EmpInfo();

WLsys.Model.Fm_EmpInfo mdlemp = new WLsys.Model.Fm_EmpInfo();

public ActionResult Index()

{

//获取要显示的信息

List < WLsys.Model.Fm_EmpInfo > data= dalemp.GetModel();

return View(data);

}

然后鼠标选中Index()点击右键,弹出添加视图的菜单,点击添加视图,如下图配置即可

点击添加即可在Views文件夹中生成Index.aspx

在 Index.aspx 把第一行替换为下面的内容

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<IEnumerable<WLsys.Model.Fm_EmpInfo>>" %>

开发环境运行起来 即可看到如下效果

在该页面中包含【新增】、【编辑】、【删除】、【明细】的功能在后面的章节中再详细记录

最后贴出DAL中GetModel()方法中的代码:

/// <summary>

/// 得到一个对象实体

/// </summary>

public List<WLsys.Model.Fm_EmpInfo> GetModel()

{

StringBuilder strSql = new StringBuilder();

strSql.Append("select   ");

strSql.Append(" ID,DeptNum,EmpName,EmpSpell,EmpSex,EmpDuty,EmpBirth,BirthNote,EmpTel,EmpEmail,EmpAddress,EmpEduc,EmpNation,EmpCard,EmpSalary,EmpMark,OPID,OPT,EpmPhoto,DataIn ");

strSql.Append(" from Fm_EmpInfo ");

SqlDataReader sdr = DbHelperSQL.ExecuteReader(strSql.ToString());

List<WLsys.Model.Fm_EmpInfo> empinfo = new List<WLsys.Model.Fm_EmpInfo>();

try

{

while (sdr.Read())

{

WLsys.Model.Fm_EmpInfo fem = new WLsys.Model.Fm_EmpInfo();

fem.BirthNote = sdr["BirthNote"].ToString();

fem.DataIn = sdr["DataIn"].ToString();

fem.DeptNum = sdr["DeptNum"].ToString();

fem.EmpAddress = sdr["EmpAddress"].ToString();

fem.EmpBirth = sdr["EmpBirth"].ToString();

fem.EmpCard = sdr["EmpCard"].ToString();

fem.EmpDuty = sdr["EmpDuty"].ToString();

fem.EmpEduc = sdr["EmpEduc"].ToString();

fem.EmpEmail = sdr["EmpEmail"].ToString();

fem.EmpMark = sdr["EmpMark"].ToString();

fem.EmpName = sdr["EmpName"].ToString();

fem.EmpNation = sdr["EmpNation"].ToString();

fem.EmpSalary = decimal.Parse(sdr["EmpSalary"].ToString());

fem.EmpSex = sdr["EmpSex"].ToString();

fem.EmpSpell = sdr["EmpSpell"].ToString();

fem.EmpTel = sdr["EmpTel"].ToString();

fem.EpmPhoto = sdr["EpmPhoto"].ToString();

fem.ID =int.Parse ( sdr["ID"].ToString());

empinfo.Add(fem);

}

sdr.Close();

return empinfo;

}

finally

{

sdr.Close();

}

}

				
时间: 2024-10-18 15:12:45

我的 ASP.NET MVC2 学习笔记<一>:Index页面的数据显示的相关文章

Asp.Net Identity学习笔记+MVC5默认项目解析_授权&Claim

Identity学习笔记 Asp.Net Identity学习笔记+MVC5默认项目解析_基础用法 Asp.Net Identity学习笔记+MVC5默认项目解析_授权&Claim Identity学习笔记授权以角色授权IdentityRoleRoleManager基于声明的(Claims)IPrincipalIIdentityCalimsIdentityClaim用户登入用户授权其他细节Claim Type命名空间 授权 最常用的授权就是给Controller或Action打上[Authori

Asp.Net Identity学习笔记+MVC5默认项目解析_第三方登入&授权总结

Identity学习笔记 Asp.Net Identity学习笔记+MVC5默认项目解析_基础用法 Asp.Net Identity学习笔记+MVC5默认项目解析_授权&Claim Asp.Net Identity学习笔记+MVC5默认项目解析_第三方登入&授权总结 Identity学习笔记第三方登入配置登入案例登入技术总结本地,已登入本地,未登入第三方登入 第三方登入 本文介绍Identity的第三方登入技术.到目前为止只介绍了CookieAuthentication这种授权方式,即浏览

[Asp.net本质论]学习笔记(1)

引言 之前大部分时间,一直在学c#,打算将asp.net本质论好好学习一下,之前虽然已经看了两边了,总感觉看过,没做笔记等于白看了,一点印象也没.打算将书中的代码,自己实现一下,在敲代码时要一直反思,为什么作者那样实现,如果是自己该如何实现? web应用程序 资源的地址——通用资源标识符(URI) 我们在浏览器地址栏中输入的内容统称为通用资源标识符(Universal Resource Identifier,URI),它有很多种形式,在web中我们通常使用统一资源定位符(Uniform Reso

ASP.NET MVC5学习笔记01

由于之前在项目中也使用MVC进行开发,但是具体是那个版本就不是很清楚了,但是我觉得大体的思想是相同的,只是版本高的在版本低的基础上增加了一些更加方便操作的东西.下面是我学习ASP.NET MVC5高级编程(5)的一些知识笔记,有些简单的操作没有进行记录,一些知识点就使用思维导图来写出大体的知识架构. MVC5是完全Bin部署的,也就是说我们最后发布的时候只是将Bin文件下面的应用程序的程序集发布就可以,对于服务器来说只需要有.NET 4.5就可以进行安装了. 一条至理名言"约定优于配置"

Asp.Net Mvc 学习笔记总结(自学第一天)

今天是第一天学习,主要总结了下面两个问题.由于是自学,总结的可能会有纰漏希望大家积极指正(微笑). 1.什么是Mvc?为什么要用Mvc? 2.如何使用Mvc快速实现入门级别的开发? 这里先说一下什么是Mvc:首先Mvc是一种架构模式:第二Mvc不等同于三层:第三Asp.net Mvc是延用了Mvc思想做出来的一款基于三层中的UI层的一款产品:那么Mvc架构模式是什么意思呢?当然这个架构模式20世纪80年代就已经提出来了.当时的提出的时候并没有标准的输入输出设备,只是为了单纯的区分开来输入.输出和

Asp.Net Identity学习笔记+MVC5默认项目解析_基础用法

前言ASP.NET Identity特性Identity包基本IdentityUserUserManager准备工作ApplicationDbContextApplicationUserManager注册案例登入案例用户信息验证用户名密码验证器自定义验证器 前言 本文简单介绍Identity的使用,使用的案例是基于默认的Mvc5项目(只勾选MVC,不勾选WebApi).读者可以拿着项目源码对照地看. ASP.NET Identity特性 One ASP.NET Identity 系统 更容易加入

ASP.NET MVC 学习笔记(1)

从头开始系统地学习ASP.NET MVC

ASP.NET Route学习笔记(1)

注:本文很多部分知识来自于蒋金楠老师的<ASP.NET MVC框架解密>,本人写纯粹是用作个人笔记,假如侵犯了您的权益,请联系我,我立刻删除 在ASP.NET MVC中URL路由通过对请求的URL进行解析,得到以Controller和Action名称为核心的路由数据.但是URL路由系统并不是专属于ASP.NET MVC的,而是直接建立在ASP.NET上,在System.Web.Routing 命名空间下,所以WebForm也可以使用路由对请求地址与物理文件的分离. 好的Url应该满足如下条件:

asp.net基础学习笔记

原文地址:http://blog.csdn.net/oxoxzhu/article/details/8652530 1.概论 浏览器-服务器 B/S 浏览的 浏览器和服务器之间的交互,形成上网B/S模式 对于HTML传到服务器  交给服务器软件(IIS)  服务器软件直接读取静态页面代码,然后返回浏览器 对于ASPX传达服务器  交给服务器软件(IIS)   IIS发现自己处理不了aspx的文件,就去映射表根据后缀名里找到响应的处理程序(isapi,服务器扩展程序) 问题:IIS如何调用可扩展程