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. 由一篇文章引发的思考——多线程处理大数组

    今天领导给我们发了一篇文章文章,让我们学习一下. 文章链接:TAM - Threaded Array Manipulator 这是codeproject上的一篇文章,花了一番时间阅读了一下.文章主要是 ...

  2. Javascript事件模型系列(三)jQuery中的事件监听方式及异同点

    作为全球最知名的js框架之一,jQuery的火热程度堪称无与伦比,简单易学的API再加丰富的插件,几乎是每个前端程序员的必修课.从读<锋利的jQuery>开始,到现在使用jQuery有一年 ...

  3. C++ std::multiset

    std::multiset template < class T, // multiset::key_type/value_type class Compare = less<T>, ...

  4. iOS 获取键盘相关信息

    一,在需要的地方添加监听 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onKeyboardWil ...

  5. 深入了解Java程序执行顺序

    Java中main方法,静态,非静态的执行顺序详解 Java程序运行时,第一件事情就是试图访问main方法,因为main相等于程序的入口,如果没有main方法,程序将无法启动,main方法更是占一个独 ...

  6. 掌握js模板引擎

    最近要做一个小项目,不管是使用angularjs还是reactjs,都觉得大材小用了.其实我可能只需要引入一个jquery,但想到jquery对dom的操作,对于早已习惯了双向绑定模式的我,何尝不是一 ...

  7. 知方可补不足~SQL2008中的发布与订阅模式

    回到目录 作用:完成数据库与数据库的数据同步 原理:源数据库发布需要同时的表,存储过程,或者函数:目标数据库去订阅它,当源发生变化时,目标数据库自己同步,注意,由于这个过程是SQL自动完成的,所以要求 ...

  8. iOS--二维码

    现在很多APP都涉及了二维码扫码功能,这个功能简单实用,很多情况下用户乐于使用,现在本文带来iOS7自带二维码扫码的教程,也包括扫条形码,足以满足简单的扫码要求,而且避免使用第三方的繁琐. 后期项目中 ...

  9. Servlet开发技术,创建,以及Servlet的配置,web.xml的配置

    直接上图,不废话!!! 第一:首先在Eclipse的包资源管理器中,单机鼠标右键,在弹出的快捷键菜单中选择“新建”/Servlet命令,在弹出的对话框中输入新建的Servlet所在的包和类名,然后单击 ...

  10. 每天一个linux命令(36):diff 命令

    diff 命令是 linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件.diff程序的 ...