技巧总结
1.sql连接字符串传递方式
1)在最底层操作数据库类DbHelper中,常量中已经定义好了,这个常量定义也是通过配置文件获得
2)在BLL中构造函数中,构造dal层类,同时将sql连接字符串传入进去
2.valign="middle";//直接设置td,而不用style
3.继承Page页面的BasePage
OnPreInit方法:用于设置主题
OnPreLoad方法:用于身份验证操作,Session用户验证,验证不符合条件则跳转到登陆页,加载之前
OnLoad方法 :页面加载后的操作
4.Form方式提交表单
<Form method="Post" action="index.aspx">
<input type="text" name="u"/>
<input type="submit" name="tj" onclick="check()"/>
</Form>
在index.aspx.cs中获取参数 Request.Form["u"] 自动提交到指定页面
5.frameset设计
<frameset rows="10%,80%,10%" cols="*" border="1">
<frame src="top.aspx">
<frameset cols="30%,70%">
<frame src="left.aspx"/>
<frame src="right.aspx" name="right"/>
</frameset>
</frameset>
left.aspx这样设计
<a href="www.baidu.com" target="right">指定内容置于right</a>
6.文件下载
FileStream fs=new FileStream(Server.MapPath("logo.jpg"),FileMode.Open);
byte[] bytes=new byte[fs.Length];
fs.Read(bytes,0,Convert.ToInt32(fs.Length));
fs.close();
7.GridView
自定义模版列:TemplateField列头 ItemTemplate列内容模版
超链接列:<asp:HyperLinkField DataNavigateUrlFields="f_id" DataNavigateUrlFormatString="liebieshezhi.aspx?
f_id={0}" HeaderText="类别" Text="类别" />
8.前台绑定数据
<asp:DropDownList DataSourceID="DataSource1" DataTextField="DepartMent" DataValueField="DepartMentID">
<asp:ListItem value="0">请选择部门</asp:ListItem>
</asp:DropDownList>
9.通过配置文件获取数据库链接
<add name="conn1" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Example.mdb" providerName="System.Data.OleDb"/>
等价于
<add name="conn2" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\WebStudy\Web001\Web001\App_Data\Example.mdb;Persist Security Info=False"/>
资源文件写法:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:conn1 %>"
ProviderName="<%$ ConnectionStrings:conn1.ProviderName %>"
SelectCommand="SELECT * FROM Categories"></asp:SqlDataSource>
前台绑定web.config数据 "<%$ConnectionStrings:conn1>" 这个用于ConnctionStrings,Appsettings资源文件用Appsettings
10.FileUpload文件上传保存
fileUpload1.SaveAs(Server.MapPath(".")+"\\"+fileUpload1.filename);//即可保存
Server.MapPath(".")//表示当前文件目录
11.window.location.reload()等等刷新页面,在这个页面里的所有隐藏变量(HiddenField)值将会冲掉;但是后台提交及PostBack