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. Android Fragment add/replace以及backstack

    无论Fragment以何种方式加入,都不会影响backstack,backstack由addToBackStack函数决定,只有调用了这个函数,才会将Fragment加入返回栈.这个说法其实不太准确, ...

  2. 我所理解的OOP——UML六种关系

    最近由于经常给公司的小伙伴儿们讲一些OOP的基本东西,每次草纸都被我弄的很尴尬,画来画去自己都乱了,有时候也会尝试使用UML表示类之间的关系,但UML从毕业后就再也没接触过了,经常会被小伙伴儿们指出继 ...

  3. Lucene系列-分析器

    分析器介绍 搜索的基础是对文本信息进行分析,Lucene的分析工具在org.apache.lucene.analysis包中.分析器负责对文本进行分词.语言处理得到词条,建索引和搜索的时候都需要用到分 ...

  4. Android Activity的生命周期简单总结

    Android Activity的生命周期简单总结 这里的内容参考官方的文档,这篇文章的目的不是去总结Activity是如何启动,如何创造,以及暂停和销毁的,而是从实际开发中分析在Activity各个 ...

  5. java.sql.SQLException: JZ00L

    出现, java.sql.SQLException: JZ00L: 登录失败.检查与此异常现象有关的 SQL 警告以获得失败原因. at com.sybase.jdbc3.jdbc.ErrorMess ...

  6. MVVM架构~knockoutjs系列之文本框数符长度动态统计功能

    返回目录 这个功能为什么要写呢,因为在之前做了一个前端的页面效果,使用JS写的,感觉很累,真的,对于一个文本框长度动态统计,你要写blur,press,down什么的事件,太麻烦了,这时,我想到了kn ...

  7. EF架构~引入规约(Specification)模式,让程序扩展性更强

    回到目录 规约(Specification)模式:第一次看到这东西是在microsoft NLayer项目中,它是微软对DDD的解说,就像petshop告诉了我们MVC如何使用一样,这个规约模式最重要 ...

  8. Atitit main函数的ast分析  数组参数调用的ast astview解析

    Atitit main函数的ast分析  数组参数调用的ast astview解析 1.1. Xxcls.main(new String[]{"","bb"}) ...

  9. Atitit mtp ptp rndis midi协议的不同区别

    Atitit mtp ptp rndis midi协议的不同区别 1. PTP:1 2. MTP:1 3. Mtp 与usb区别2 4. 不过和UMS相比,MTP也有不足之处:3 5.  MTP协议介 ...

  10. python开启简单webserver

    python开启简单webserver linux下面使用 python -m SimpleHTTPServer 8000 windows下面使用上面的命令会报错,Python.Exe: No Mod ...