MVC - M(Model模型层)   V(View视图层)   C(Control控制层)

数据访问层        界面层       业务逻辑层

WebForm 是请求访问哪一个页面,返回的是一个处理后的页面

MVC 是请求访问的哪一个控制器里面的动作  Controller  Action

<%@ %>    <% %>   <%= %> 作用

<%@ %> 声明语言或引用命名空间

<%@ Language="c#"%>

<%@ Import NameSpace="System.Data.SqlClient"%>

<% %>放c#代码
<%= %>放一个字段或一个变量

MVC登陆界面,状态保持,退出登录

Controllers文件夹下添加Hone 和Login 两个控制器

 public class LoginController : Controller
{
//Login控制器 public ActionResult Login0()//登陆界面
{
return View();
}
public ActionResult Login1(string username,string pwd)//登陆
{
Users u = new UsersData().Select(username,pwd);//查询数据
if (u != null)//查到数据
{
//创建Cookies
Response.Cookies["un"].Value = u.UserName;
//跳转到主界面
return RedirectToAction("Index", "Home");
}
else//没有数据
{
// 创建Session,用于传到登录界面错误提示
Session["loginok"] = "";
//跳回登录界面
return RedirectToAction("Login0", "Login");
}
}
}
Home控制器
 public class HomeController : Controller
{ //Home控制器 public ActionResult Index()// 主界面
{
if (Request.Cookies["un"] != null) //Cookies有数据跳转到主界面
{
return View();
}
else // 跳转到登陆界面
{
return RedirectToAction("Login0","Login");
}
} public ActionResult Exit() //退出
{
//设置Cookies 过期时间
Response.Cookies["un"].Expires = DateTime.Now.AddDays(-);
//跳转到登录界面
return RedirectToAction("Login0","Login");
}
}

Views文件夹下Login0视图和Index视图

 <body>

         <h1>登录界面</h1>
<%-- form 表单action提交到那个服务器 method提交方法--%>
<form action="Login1" method="post">
用户名:<input type="text" name="username" /><br />
<br />
密码:<input type="password" name="pwd" /><br />
<br />
<%--Session["loginok"]是否有数据用于错误提示--%>
<%
if (Session["loginok"] != null)
{
%>
<span style="color: red;">用户名密码输入有误!</span>
<%
}
Session["loginok"] = null;
%>
<input type="submit" value="登录" />
</form> </body>

Index视图设置一个退出按钮

 <form action="Home/Exit" method="post">
<input type="submit" value="退出登录" />
</form>

MVC _ aspx视图引擎登录及状态保持的更多相关文章

  1. MVC 【ASPX视图引擎】

    新建项目----ASP.NET MVC 4 Web 应用程序------选择模板(空).视图引擎(ASPX) 1.认识控制器Controller using System; using System. ...

  2. ASP.NET MVC扩展自定义视图引擎支持多模板&动态换肤skins机制

    ASP.NET mvc的razor视图引擎是一个非常好的.NET MVC框架内置的视图引擎.一般情况我们使用.NET MVC框架为我们提供的这个Razor视图引擎就足够了.但是有时我们想在我们的项目支 ...

  3. ASP.NET MVC 扩展自定义视图引擎支持多模板&动态换肤skins机制

    ASP.NET  mvc的razor视图引擎是一个非常好的.NET  MVC 框架内置的视图引擎.一般情况我们使用.NET MVC框架为我们提供的这个Razor视图引擎就足够了.但是有时我们想在我们的 ...

  4. 2014-07-29 浅谈MVC框架中Razor与ASPX视图引擎

    今天是在吾索实习的第15天.随着准备工作的完善,我们小组将逐步开始手机端BBS的开发,而且我们将计划使用MVC框架进行该系统的开发.虽然我们对MVC框架并不是非常熟悉,或许这会降低我们开发该系统的效率 ...

  5. ASP.NET MVC 3 Razor 视图引擎 基本语法

    本篇博文将进入MVC 3 的世界了,首先学习一下MVC 3 新增的Razor视图引擎的基本语法. 1. 使用 @ 字符将代码添加到页面中.正如传统的aspx视图的<% %>相同.      ...

  6. MVC 【Razor 视图引擎】基础操作 --页面跳转,传值,表单提交

    ASPX  与  Razor  仅仅是视图不一样. 新建项目----ASP.NET MVC 4 Web 应用程序------选择模板(空).视图引擎(Razor ) 1.视图中 c# 代码  与 HT ...

  7. .NET MVC 两种视图引擎(Razor、Aspx)

    ASPX 优点:         通过上面小小的对比,不难看出,与ASP.NET MVC紧密集成,对于以往ASP.NET开发人员有更好体验.其实它还有其他几优点:         ●智能感应      ...

  8. MVC 【Razor 视图引擎】案例分析

    using MvcApplication1.Models; using System; using System.Collections.Generic; using System.Linq; usi ...

  9. 将asp.net mvc的aspx视图转化为Razor视图

    ASP.NET MVC2.0的项目如何升级到3.0?? 前言:微软在2009年3月份推出了MVC之后,可以说是发展的速度非常快,仅仅过了不到3年的时间,MVC版本已经从1.0到达4.0,尤其是2.0和 ...

随机推荐

  1. [.net 面向对象编程基础] (19) LINQ基础

    [.net 面向对象编程基础] (19)  LINQ基础 上两节我们介绍了.net的数组.集合和泛型.我们说到,数组是从以前编程语言延伸过来的一种引用类型,采用事先定义长度分配存储区域的方式.而集合是 ...

  2. Linux shell之打印输出

    介绍 经常需要和shell命令打交道,但是一直没有系统的学习,接下来会花1到2个月的时间系统的学习一下shell命令,接下来就开启shell命令的奇妙旅行吧.本章主要介绍shell的打印输出. 知识要 ...

  3. C# 获取当前日期在指定日期范围内是第几周

    public static int GetWeekOfDay(DateTime start, DateTime end) { //总周数 )); //用于存储日期 var weekDic = new ...

  4. Redis快速入门详解

    Redis入门详解 Redis简介 Redis安装 Redis配置 Redis数据类型 Redis功能 持久化 主从复制 事务支持 发布订阅 管道 虚拟内存 Redis性能 Redis部署 Redis ...

  5. Redis教程(十三):管线详解

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/141.html 一.请求应答协议和RTT: Redis是一种典型的基于C/ ...

  6. VM~Linux联不上网

    使用桥接的链接方式,centos6.4配置静态ip,能ping通网关,但ping 外网时出现 "network is unreachable" 如:ping www.baidu.c ...

  7. lua如何构造类

    function class(super, autoConstructSuper) local classType = {}; classType.autoConstructSuper = autoC ...

  8. [数据库事务与锁]详解五: MySQL中的行级锁,表级锁,页级锁

    注明: 本文转载自http://www.hollischuang.com/archives/914 在计算机科学中,锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的 ...

  9. gulp/grunt和browserify/webpack的区别

    Gulp应该和Grunt比较,他们的区别我就不说了,说说用处吧.Gulp / Grunt 是一种工具,能够优化前端工作流程.比如自动刷新页面.combo.压缩css.js.编译less等等.简单来说, ...

  10. jqGrid实现当前页列合计与总计

    当前页列合计    js代码如下:   ... footerrow: true, gridComplete: function () { var rowNum = parseInt($(this).g ...