您的位置:首页 > 编程语言 > ASP

ASP.NET常用技巧

2011-10-03 20:28 295 查看
ASP.NET常用技巧
1、    获得当前日期和星期
string[] weekday =...{ "星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
DateTime dt = DateTime.Now;
Response.Write("<font size=8 color=yellow>系统日期时间:"+dt.ToString()+"<br>");
Response.Write("获得今天是星期几:" + weekday[(int)dt.DayOfWeek] + "<br>");
2、    读取TXT文件
string path = Server.MapPath("text/5.txt");
Response.Write("<font size=4 color=blue>");
System.Text.StringBuilder sb = new System.Text.StringBuilder();
try
...{
using (StreamReader sr = new StreamReader(path, System.Text.Encoding.Default))
...{
while (sr.Peek() != -1)
...{
sb.Append("<p>" + sr.ReadLine() + "</p><br>");
}
sb.Replace(@" ", "<br>");
Response.Write(sb + "</font><br>");
}
}
catch (Exception ex)
...{
Response.Write("<script  language= 'javascript'> alert('文件无法打开或者读取请确认文件名称是否正确以及你是否有读取权限')</script>");
}
3、    跳转网页
Server.Transfer("err.htm");            Response.Redirect ()

两个的作用都是一样的

4、    Server.Execute()方法类似以上面的作用,区别在于该方法有些像在主程序调用子程序,当转移ASP。NET程序执行完成后,还会回到调用转移的ASP。NET程序中。即会把调用的子程序的结果返回到主程序中。
Response.Write("看看提供的转移功能是不是真的!");
Server.Execute("two.aspx");
Response.Write("<font size=20 color=green>" + "已经完成!" + "</font><br>");
5、    对字符串使用HTML编码方式进行编码Server.HtmlEncode()和Server.HtmlDecode()
Server.HtmlEncode("<p>ASP。NET2。0网页制作正在进行中。。。。。。。。。。。</p>");//直接显示HTML源代码
显示结果为:<p>ASP。NET2。0网页制作正在进行中。。。。。。。。。。。</p>

Response.Write("<b>"+Server.HtmlDecode(str)+"</b><br>");//对HTML码进行译码
显示结果为:ASP。NET2。0网页制作正在进行中。。。。。。。。。。。

6、    同理,可对页面里的参数进行URL参数传递特殊的符号,例如:#、?和&字符就需要Server.UrlEncode()方法进行编码处理,如果不需要进行处理,Server.UrlDecode()方法
例:<a href="Default2.aspx?name=<% =Server.UrlDecode("陈会安? & #") %>">没有有编码</a>
等价<a href="Default2.aspx?name=陈会安? & #>有编码</a>
在地址栏里显示:http://localhost/test2/Default2.aspx?name=陈会安?%20&
若要传递特殊符号,则需要用如下方式:
<a href="Default2.aspx?name=<% =Server.UrlEncode("陈会安? & #") %>">有编码</a>
即显示了:陈会?    即没有正确传递过来
在地址栏里显示: http://localhost/test2/Default2.aspx?name=%e9%99%88%e4%bc%9a%e5%ae%89%3f+%26+%23 即显示了:陈安会 ? & #
7、    获得QueryString集合对象
string[] name = Request.QueryString.GetValues("name");即是对Method=get
string[] pass = Request.Form.GetValues("pass");
Response.Write("用户密码:" + pass[0] + "、" + pass[1] + "<br>");即是对Method=post而言
8、    ASP.NET提示框显示
a)    <control name>.Attributes.Add(Attributes.Add(key,value)
例: button1.Attributes.Add("onClick", "alert('测试成功!')");
b)    向应客户端发出的脚本块
this.RegisterClientScriptBlock("测试", "<script>alert('请输入完整!')</script>");
c)    Reponse.Write("<script>alert('消息')</script>");
9、    动态加载用户控件
通过编程方式创建用户控件,必须调用页面的LoadControl方法,这个方法接收用户控件源文件的相对路径为参数,返回一个 Control类型的对象,然后显式地将对象转换成用户控件的强类型,具体代码如下:

Header had = (Header)LoadControl("Header.ascx");
Place.Controls.Add(had);
前台: <form id="form1" runat="server">
<div>
<asp:PlaceHolder ID="Place" runat="server"></asp:PlaceHolder>
</div>
</form>
10、    网页之提示框
Button1.Attributes.Add ("onClick", "return confirm('是否继续?')");

//如果单击是确定的话,则继续往下执行,否则停止执行
Response.Write("<script>alert('哈哈,成功了!');</script>");
以上的格式为:
Response.Write("javascript:alert('hahahah!')");
或:
<control   name>.Attributes.Add("onClik","   return   confirm('are   you   sure?')");
第三种方法是:
RegisterStartupScript("key", "<script>alert('才刚刚开始哦!')</script>");
//参数一是脚本块的唯一键,参数二是发送到客户端的脚本内容.
11、 悬停时的提示代码
this.Button1.ToolTip = "欢迎你注册!";
12、参数传递,新引入的方式,通过PostBackUrl传递
在第一个面的文件名为:one.aspx
并且写好要传递参数的属性值。例:
public TextBox Uid
...{        get...{      return this.txtUid; }}
public TextBox Pwd...{  get        ...{ return this.txtPwd; } }
然后按钮事件写上要转到的页面:this.Button1.PostBackUrl= "post.aspx";
在第二个接收参数的面面写上:
<%@ PreviousPageType VirtualPath="~/default.aspx" %>
然后就可以直接使用了
lUid.Text = PreviousPage.Uid.Text.ToString();
lPwd.Text = PreviousPage.Pwd.Text.ToString();
13、解决表单传递参数变乱码
在web.config里加下列语句
<globalization   requestEncoding="gb2312"   responseEncoding="gb2312"/>
14、 asp.net如何取得纯客户端控件的值
例一:纯客户端控件
<input name="edisundong" type="text">
在服务器端取得的方法
string strvalue=Request.Form.Get("edisundong");
例二:纯客户端控件
<input type="radio" name="sex" value="1" checked="true" />
<input type="radio" name="sex" value="2" />
string[] strvlaues = Request.Form.GetValues("sex");
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: