1、 验证MD5
public string get_md5(string me)
{
byte[] byte_str = Encoding.UTF8.GetBytes(me);
MD5CryptoServiceProvider md5_str = new MD5CryptoServiceProvider();
byte[] result = md5_str.ComputeHash(byte_str);
string md5_result = string.Empty ;
md5_str.Clear();
for (int i = 0; i < result.Length;i++ )
{
md5_result += result[i].ToString("x").PadLeft(2,'0');
}
return md5_result;
}
2、 数据库链接
string conntent = ConfigurationManager.AppSettings["connsting"];
//conntent = "Data Source=.//SQLEXPRESS;AttachDbFilename=|DataDirectory|//hg2007.mdf;Integrated Security=True;User Instance=True";
connstring = new SqlConnection(conntent);
cmd = new SqlCommand();
cmd.Connection = connstring;
web.config
<AppSettings>
<addkey="connsting"value="Data Source=./SQLEXPRESS;AttachDbFilename=|DataDirectory|/hg2007.mdf;Integrated Security=True;User Instance=True"></add>
Sql server 标准链接方式server=127.0.0.1;database=hg2007;userid=sa;passwd=sa
</AppSettings>
3、 引用传参C#
out 不必初始化,但在子函数中需要赋值
ref 必须初始化
4、 的伪类Css
A:link 对于无 href 属性(特性)的 a 对象,此伪类不发生作用。
A:active 设置对象在被用户激活(在鼠标点击与释放之间发生的事件)时的样式。
A:hover 设置对象在其鼠标悬停时的样式。
A:visited 设置 a 对象在其链接地址已被访问过时的样式。
5、 关于数据绑定
普通数据绑定方式
查询SqlDataAdapter 并填充到一个DataSet控件中
将DataSet赋值给需要绑定的控件,执行绑定操作controlName.DataBind()
DropDownList需要对DataTextField和DataValueField进行赋值
6、 关于分页显示
private void Page_hg(int abc)
{
conn pada = new conn();
pada.openconntent();
string l_pada = "SELECT hg_id, hg_title ,hg_time FROM hg_view WHERE (hg_show = 1 and hg_type='" +
abc + "') ORDER BY hg_id DESC";
SqlDataAdapter me = pada.datago(l_pada);
DataSet da_pa = new DataSet();
me.Fill(da_pa);
pada.closeconntent();
PagedDataSource objePage = new PagedDataSource();
objePage.DataSource = da_pa.Tables[0].DefaultView;
objePage.PageSize = 20;
objePage.AllowPaging = true;
int curpage;
if (Request.QueryString["Page"] != null)
{
curpage = Convert.ToInt32(Request.QueryString["Page"]);
}
else
{
curpage = 1;
}
objePage.CurrentPageIndex = curpage - 1;
l_page.Text = "Page:" + curpage.ToString();
if (objePage.IsFirstPage)
{
lnkPrev.Enabled = false;
}
else
{
lnkPrev.NavigateUrl = Request.CurrentExecutionFilePath + "?type="+ Request.QueryString["type"] +"&Page=" + Convert.ToString(curpage - 1);
}
if (objePage.IsLastPage)
{
lnkNext.Enabled = false;
}
else
{
lnkNext.NavigateUrl = Request.CurrentExecutionFilePath + "?type=" + Request.QueryString["type"] + "&Page=" + Convert.ToString(curpage + 1);
}
mkrepeater.DataSource = objePage;
//lnkPrev.DataBind();
// lnkNext.DataBind();
mkrepeater.DataBind();
}
7、 关于使用第三方控件.dll的
一般方法:直接添加引用
或者 复制到bin文件夹下即可
8、 关于指令集
这是自定义控件使用的指令
<%@ Register Src="list.ascx" TagName="list" TagPrefix="uc1" %>
这是声明为一个网页文件的指令
<%@ Page Language="C#" MasterPageFile="~/hg_Mage.master" AutoEventWireup="true" CodeFile="hg_list.aspx.cs" Inherits="hg_list" Title=" " %>
这是声明为一个自定义控件的指令
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="hg_zb.ascx.cs" Inherits="hg_zb" %>
这是声明为模版的指令
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="hg_Mage.master.cs" Inherits="hg_Mage" %>
9、 取消提交字符串安全检查
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="hg_add_new.aspx.cs" Inherits="admin_hg_add_new" ValidateRequest="false"%>
10、 实现AJAX
技术要点在于实现客户端与服务端实现异步交互。即客户端提交信息给服务端运行后,客户端不再等待服务端反应,继续执行,而服务端完成操作后返回客户端,运行客户端回调函数。(实现异步交互是AJAX的技术点,但实现异步交互未必要使用ajax技术,采用web服务异步调用机制也可实现)在客户端采用JAVASCRIPT技术运行客户端程序,服务端采用web服务或其他C#编程方式。
在web.config中添加<httpheadlers></httpheadlers>节点,添加自定义节点<add verb=”*” path=”ajaxpro/*.ashx” type=”AjaxPro.AjaxHandlerFactory,Ajaxpro.2” />
编写服务端代码:需要首先在load_page声明ajaxpro.uility.registerTypeForajax(type)
编写代码前加入[AjaxPro.Ajaxmothod()]