ASP.NET 学习笔记
1、ASP.NET 服务器控件是可被服务器理解的标签
有三种类型的服务器控件(所有服务器控件必须出现在 <form> 标签内,同时 <form> 标签必须包含 runat="server" 属性。):
- HTML 服务器控件 - 传统的 HTML 标签(向 HTML 元素添加 runat="server" 属性。如:
<a id="link1" runat="server">Test!</a>
) - Web 服务器控件 - 新的 ASP.NET 标签 (没有必要映射任何已存在的 HTML 元素,它们代表更复杂的元素。如:
<asp:Button id="button1" Text="Click me!" runat="server" OnClick="submit"/>
) - Validation 服务器控件 - 用于输入验证
2、IsPostBack
判断页面是首次加载的,还是数据回发(有get或者post请求过的)后的页面。一些按钮提交事件会触发页面重载,此时对于一些数据绑定和初始化的动作会被反复执行,需要使用此属性来屏蔽此种情况!
一个页面第一次显示的时候IsPostBack = false,然后在这个页面上点击按钮或其他东西提交的时候,IsPostBack = true。
常用:if(!IsPostBack) InitialData();
3、ViewState
当 Classic ASP 中的表单被提交时,所有的表单值都会被清空,当提交了一张带有大量信息的表单,而服务器返回了一个错误。不得不返回表单,然后更正其中的信息。点击后退按钮,所有的表单值都被清空了,将不得不重新开始所有的一切。
当ASP .NET 中的表单被提交时,表单会随所有表单值一同重新出现,因为ViewState 会在页面被提交到服务器时指示其状态,ASP .NET 维持了 ViewState。维持 ViewState 是 ASP.NET Web 表单的默认设置。如果不希望维持 ViewState,需在 .aspx 页面的顶部包含指令: <%@ Page EnableViewState="false" %>,或为任意控件添加属性:EnableViewState="false"。
4、常用控件
- Label 控件用于在页面上显示文本。该文本是可编程的。
- TextBox 控件用于创建用户可输入文本的文本框。
- Button 控件用于显示按钮。
- Image 控件用于显示图像。
- Repeater 控件用于显示重复的项目列表,这些项目被限制在该控件。Repeater 控件可被绑定到数据库表、XML 文件或者其他项目列表。
5、数据绑定
- ADO.NET读取数据库资料到资料表
<%@Import Namespace="System.Data"%>
<%@Import Namespace="System.Data.SqlClient"%> string strSql = @"select * from tb_test";
string strConn = "server=localhost;database=dbtest;user=sa;pwd=123456";
SqlConnection myConn = new SqlConnection(strConn);
SqlDataAdapter myDataAdapter = new SqlDataAdapter(strSql,myConn);
DataSet ds = new DataSet();
myDataAdapter.Fill(ds);
DataTable dtData = ds.Tables[];
- 将资料表绑定到数据显示控件
Repeater1.DataSource=dtData;
Repeater1.DataBind();
- 设定数据显示样式(<HeaderTemplate> 元素中的内容在输出中仅出现一次,而 <ItemTemplate> 元素的内容会对应 DataSet 中的 "record" 重复出现,最后,<FooterTemplate> 的内容在输出中仅出现一次)
<html>
<body> <form runat="server">
<asp:Repeater id="cdcatalog" runat="server"> <HeaderTemplate>
<table border="1" width="100%">
<tr>
<th>Title</th>
<th>Artist</th>
<th>Country</th>
<th>Company</th>
<th>Price</th>
<th>Year</th>
</tr>
</HeaderTemplate> <ItemTemplate>
<tr>
<td><%#Container.DataItem("title")%></td>
<td><%#Container.DataItem("artist")%></td>
<td><%#Container.DataItem("country")%></td>
<td><%#Container.DataItem("company")%></td>
<td><%#Container.DataItem("price")%></td>
<td><%#Container.DataItem("year")%></td>
</tr>
</ItemTemplate> <FooterTemplate>
</table>
</FooterTemplate> </asp:Repeater>
</form> </body>
</html>
6、母版页
Master Page 使您有能力为 web 应用程序中的所有页面(或页面组)创建一致的外观和行为,为其他页面提供了模版,带有共享的布局和功能。Master Page 为内容定义了可被内容页面覆盖的占位符。而输出结果就是 Master Page 和内容页面的组合。
- master1.master
<%@ Master %> <html>
<body>
<h1>Standard Header For All Pages</h1> <asp:ContentPlaceHolder id="CPH1" runat="server">
</asp:ContentPlaceHolder> </body>
</html>
- page1.aspx
<%@ Page MasterPageFile="master1.master" %> <asp:Content ContentPlaceHolderId="CPH1" runat="server"> <h2>Individual Content</h2>
<p>Paragrap 1</p>
<p>Paragrap 2</p> </asp:Content>
ASP.NET 学习笔记的更多相关文章
- Asp.Net 学习笔记(IIS不同版本和Asp.Net)
主要目的是在网上记录一下学习笔记,如有不对,请指出 谢谢!! iis5.x: 存在问题,inet info收到动态请求后,aspnt_isapi.dll会被加载到inetinfo.exe(挂载w3sv ...
- ASP.NET 学习笔记(一)ASP.NET 概览
ASP.NET 是一个使用 HTML.CSS.JavaScript 和服务器脚本创建网页和网站的开发框架. ASP.NET 支持三种不同的开发模式:Web Pages(Web 页面).MVC(Mode ...
- <转>ASP.NET学习笔记之MVC 3 数据验证 Model Validation 详解
MVC 3 数据验证 Model Validation 详解 再附加一些比较好的验证详解:(以下均为引用) 1.asp.net mvc3 的数据验证(一) - zhangkai2237 - 博客园 ...
- ASP.NET学习笔记--自己写的Login.aspx
以前有大学有学过,但是没学好,现在准备完全自己动手做一个网站,学习一下ASP.NET 做一个登录页面,首先要有创建一个新的网站,添加Login.aspx,然后做出自己想要的DIV和CSS布局, 之后创 ...
- ASP.NET学习笔记(5)——原生Ajax基本操作
说明(2017-11-4 15:32:49): 1. 回北京后又快一个月了,上次在家写的下回预告,到底是没把加水印写完,而且这次也不想写.. 2. 上次许的愿,十月份看完asp.net,已经泡汤了,翻 ...
- ASP.NET学习笔记(3)——用户增删改查(三层)
说明(2017-10-6 11:21:58): 1. 十一放假在家也没写几行代码,本来还想着利用假期把asp.net看完,结果天天喝酒睡觉,回去的票也没买到,惨.. 2. 断断续续的把用户信息的页面写 ...
- ASP.NET学习笔记1—— MVC
MVC项目文件夹说明 1.App_Data:用来保存数据文件 2.App_Start:包含ASP.NET-MVC系统启动的相关类文件 3.Controllers:存放整个项目"控制器&quo ...
- ASP.NET学习笔记——ASP.NET应用程序
0 剖析ASP.NET应用程序 用户运行ASP.NET应用程序,不是直接运行,而是使用浏览器(比如IE)通过HTTP请求一个特定的URL(如http://www.mysite.com/mypage.a ...
- <原>ASP.NET 学习笔记之应养成的良好习惯
写ASP.NET时应有的良好习惯(不定时增加): 1.view的名称一定要与对应的actionMethod的名称相同:从原理上看,客户端通过url(一般形式为http://xxx/controller ...
随机推荐
- DOM节点操作
请尊重知识,请尊重原创 更多资料参考请见 http://www.cezuwang.com/listFilm?page=1&areaId=906&filmTypeId=1 一.创建节 ...
- Linq To Sql 语法 子查询 & In & Join
子查询 描述:查询订单数超过5的顾客信息 查询句法: var 子查询 =from cin ctx.Customers where ...
- 生物信息 perl 脚本实战
索引 1.统计fasta.fa和fastq文件的长度,统计fastq的reads个数,单个reads长度,reads总长度:统计fasta文件中contig的个数,列出名称,单条的长度,以及总长度. ...
- vitamio videoView 用隐藏除videoview的控件,并旋转屏幕方向实现的全屏功能,出现的画面不能填充满videoview(画面不完整)
使用vitamio 封装的播放器 当切换到全屏模式,有时候会出现播放的画面不是全屏的情况, 全屏时,画面只占左半部分并出现拉伸效果,还显示不全,等等其他情况 阅读分析源代码发现是getHolder() ...
- 如何使div左右倾斜
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" ...
- Java客户端通过Http发送POST请求上传文件到web服务器
http://www.cnblogs.com/WilliamJiang/archive/2012/04/29/2475883.html 1.朋友的一个需求,让我给他实现,需求是这样的,需要用ASP.n ...
- 关于Android代码混淆知识点
现在有反编译技术,容易得到源码,所以要混淆代码,加大反编译难度. 只需要在 build.grade 的配置文件中配置就可以了. proguardFiles getDefaultProguardFile ...
- C#的对象内存模型
转载自:http://www.cnblogs.com/alana/archive/2012/07/05/2577893.html C#的对象内存模型: 一.栈内存和堆内存1.栈内存 由编译器自动分配和 ...
- oncontextmenu
一个页面中,BODY中用oncontextmenu='return false'来取消鼠标右键:在JS中设置oncontextmenu='return true'用window.document.on ...
- [hadoop] 集群启动和内存调优
1.启动Hadoop集群 #首先查看下zoo.cfg里面配置的server.id和集群主机的id是否一致 #如果不一致会造成yarn控制不了从节点的启动 cat /home/hadoop/zookee ...