原文:ashx的学习

嘿嘿,今天我们休息,本来是想总结一下前两周学习的javascript和jquery,但是感觉好困哦,就没有认真地学习啦,于是做了一个小小的练习,刚开始学习html使用在项目中还是蛮高兴的啦,下面就简单的总结一下这个小小的登录页面。

一.html的静态页面

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<style>
form{
margin-right:500px;
margin-top:10px;
width:300px;
height:300px;
}
</style>
</head>
<body>
<form action="first.ashx" method="post">
<table>
<tr><td>用户名:</td><td><input type="text" name="txtname" /></td></tr><br />
<tr><td>密 &nbsp;码:</td><td><input type="text" name="txtpwd" /></td></tr><br />
<tr><td><input type="submit" name="submit" value="登录" /></td>
<td><input type="button" name="btnFindPwd" value="找回密码 " /></td></tr>
</table>
</form>
</body>

这里是写了一个简单的html页面,实现其登录界面的样式。

二.ashx的文件代码

using System;
using System.Web;
using System.IO;
using UseiInfoModel;
using UserInfoBll; public class first : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/html"; //接受的是html格式的文档 string path = context.Request.MapPath("FirstHtml.html"); //获取文档的路径
string html = File.ReadAllText(path); //读取文档
context.Response.Write(html); //然后写入,即返回给我们的是html页面 string name=context.Request.Form["txtname"]; //获取txtname
string pwd = context.Request.Form["txtpwd"]; //获取txtpwd
if (!string.IsNullOrEmpty(name) && !string.IsNullOrEmpty(pwd)) //当文本框不为空
{
Userinfobll bll = new Userinfobll();
Userinfomodelcs model = bll.GetLoginByNamePwd(name, pwd); //调用数据
if(bll!=null&&string.IsNullOrEmpty(model.Username)&&string.IsNullOrEmpty(model.Pwd))
{
context.Response.Clear();
context.Response.Write("欢迎" + model.Username + "登陆成功"); //相应报文
}
}
}
public bool IsReusable {
get {
return false;
}
}
}

这就是新学习ashx文件,实现请求报文和响应报文。在这里实现了html与服务器的交互。
                 三.bll层和dal层的代码

public class Userinfobll
{
Userinfodal dal = new Userinfodal();
public Userinfomodelcs GetLoginByNamePwd(string name, string pwd)
{
return dal.GetLoginByNamePwd(name,pwd);
}
}
 public class Userinfodal
{
public Userinfomodelcs GetLoginByNamePwd(string name,string pwd)
{//Id, Username, Pwd
string sql = "select Id,Username,Pwd from UserLogin where Username=@name and Pwd=@pwd";
SqlParameter[] parms ={
new SqlParameter("@name",name),
new SqlParameter("@pwd",pwd)
};
SqlDataReader reader= DBHelp.ExecuteReader(sql,parms);
Userinfomodelcs model = new Userinfomodelcs();
if (reader.Read())
{
model.Id = Convert.ToInt32(reader[]);
model.Username = reader[].ToString();
model.Pwd = reader[].ToString();
}
return model;
}
}
public static class DBHelp
{
private static string connection = ConfigurationManager.ConnectionStrings["sql"].ToString();
public static SqlDataReader ExecuteReader(string sql, params SqlParameter[] parms)
{
SqlConnection conn = new SqlConnection(connection);
conn.Open();
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandText = sql;
cmd.Parameters.AddRange(parms);
cmd.Connection = conn;
cmd.CommandType = CommandType.Text;
cmd.CommandTimeout = ;
return cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
}
}
 public class Userinfomodelcs
{//Id, Username, Pwd
public int Id { set; get; }
public string Username { set; get; }
public string Pwd { set; get; }
}

嘿嘿,一直以为使用aspx实现其数据的提交与响应,今天学习了ashx感觉这个很奇怪,使用起来还是蛮不熟悉的,首先在实现其代码的过程中感觉不是直接和页面交互,而是一切和数据有关的和页面和有关的都要去实现,并不是很简单的那样,嘿嘿,这只是个人的意见,不知道大家在学习这个时间是不是这样的感觉那,怎么说那?可能接下来我们要学习ajax,学习完这个就好多啦,与页面的交互会更加的方便吧,但是之前也没怎么接触ajax,只是看到啦和js中使用,具体的还是不了解的,就写到这里啦,最近学习的理论知识还没有总结,感觉真的是需要再给点时间理解一下,需要了解清楚在总结。要继续努力!

ashx的学习的更多相关文章

  1. 对ASP.NET运行机制之 一般处理程序ashx的学习

    一般处理程序(HttpHandler)是·NET众多web组件的一种,ashx是其扩展名.其中一个httpHandler接受并处理一个http请求,类比于Java中的servlet.类比于在Java中 ...

  2. 学习笔记05一般处理程序ashx

    1.获取由表单传过来的参数var value1 = HttpContext.Request["健"]; 2.使得网站目录下的相对路径转化为绝对路径:(用于文件操作)var file ...

  3. CS Coder学习asp.net5个月的最大感悟:从http的角度重新认识asp.net(二)——我理解的ajax(二)

    啊哈,时隔两个月,才开始写上一篇文章的后续,实在是惭愧.主要是年尾公司又来活了,忙得团团转,而且这段时间在自学mvc.我在上文中,提到过我对mvc框架的初步印象是:相比webform,算是回归了bs本 ...

  4. CSS3学习总结——实现瀑布流布局与无限加载图片相册

    首先给大家看一下瀑布流布局与无限加载图片相册效果图: 一.pic1.html页面代码如下: <!DOCTYPE html> <html> <head> <me ...

  5. 分享一个html+js+ashx+easyui+ado.net权限管理系统

    EasyUI.权限管理 这是个都快被搞烂了的组合,但是easyui的确好用,权限管理在项目中的确实用.一直以来博客园里也不少朋友分享过,但是感觉好的要不没源码,要不就是过度设计写的太复杂看不懂,也懒得 ...

  6. knockout学习笔记10:demo

    前面已经介绍了ko的基本用法,结合官方文档,基本就可以实际应用了.本章作为ko学习的最后一篇,实现一个简单的demo.主要集中在ko,所以后台数据都是静态的.类似于博园,有一个个人文章的分类列表,一个 ...

  7. MVC系列——MVC源码学习:打造自己的MVC框架(一:核心原理)

    前言:最近一段时间在学习MVC源码,说实话,研读源码真是一个痛苦的过程,好多晦涩的语法搞得人晕晕乎乎.这两天算是理解了一小部分,这里先记录下来,也给需要的园友一个参考,奈何博主技术有限,如有理解不妥之 ...

  8. ASP.Net WebForm温故知新学习笔记:二、ViewState与UpdatePanel探秘

    开篇:经历了上一篇<aspx与服务器控件探秘>后,我们了解了aspx和服务器控件背后的故事.这篇我们开始走进WebForm状态保持的一大法宝—ViewState,对其刨根究底一下.然后,再 ...

  9. ASP.Net开发基础温故知新学习笔记

    申明:本文是学习2014版ASP.Net视频教程的学习笔记,仅供本人复习之用,也没有发布到博客园首页. 一.一般处理程序基础 (1)表单提交注意点: ①GET通过URL,POST通过报文体: ②需在H ...

随机推荐

  1. 阿里2015回顾面试招收学历(获得成功offer)

    1. 引言 继上次"百度2015校园招聘面试题回顾录(成功拿到offer)"文章过后,大家都希望除了题目之外.最好能给出自己当时的回答情况,看看有没有什么回答技巧,这样更有參考价值 ...

  2. Java线程学习笔记(一个)

    一个.正在创建的线程: 老掉牙的话题了.继承 java.lang.Thread父类或者实现Runnalbe接口.这里就提一句: class Thread implements Runnable Thr ...

  3. 猫学习IOS(四)UI半小时就搞定Tom猫

    阿土 首先对影响 下载项目的源材料: Tom猫游戏代码iOS 素材http://blog.csdn.net/u013357243/article/details/44457357 效果图 以前风靡一时 ...

  4. HDU - 5036 Operation the Sequence

    Problem Description You have an array consisting of n integers: a1=1,a2=2,a3=3,-,an=n. Then give you ...

  5. 使用jQuery和css3实现了仿淘宝ued博客左边的菜单切换动画

    今天看到淘宝ued博客的左侧导航菜单的动画好,要使用jQuery和css3我做一个简单的示例,主要用途是实现jQuery 事件和css3 transition属性. 个元素来实现鼠标滑动到某个导航的背 ...

  6. Play Modules Morphia 1.2.9a 之 Aggregation and Group aggregation

    聚合 和 分组聚合: PlayMorphia 它提供了基于开发人员models的友好接口 设想你定义了一个model.class Sales: @Entity public class Sales e ...

  7. maple 教程

    1 初识计算机代数系统Maple 1.1 Maple简说 1980年9月, 加拿大Waterloo大学的符号计算机研究小组成立, 開始了符号计算在计算机上实现的研究项目, 数学软件Maple是这个项目 ...

  8. [Java Web]Struts2加起来(一个)

    Struts2环境配置 进口Struts2的需要jar包 在WEB-INF/classes(src)文件夹下创建struts.xml文件 在web.xml文件里加入Struts过滤器信息 经常使用配置 ...

  9. 测试数据库sql声明效率

    书写sql当被发现的声明.对于所期望的结果通常是更好地执行. 当面对这些实现的时候如何选择它的最好的,相对来说?这导致了这个博客的话题,如何测试sql效率 以下介绍几种sql语句測试效率的方法,大多数 ...

  10. onethink和phpwind共享

    将onethink和phpwind数据库安装在一起.使用公用表前缀. 将onethink的member表点phpwind有user表 这是onethink在根文件夹的安装,phpwind安装在bbs的 ...