`
java-mans
  • 浏览: 11456311 次
文章分类
社区版块
存档分类
最新评论

一个企业网站的开发的几个要点

 
阅读更多

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>

<add key="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需要对DataTextFieldDataValueField进行赋值

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<chmetcnv w:st="on" tcsc="0" numbertype="1" negative="False" hasspace="False" sourcevalue=".2" unitname="”">.2”</chmetcnv> />

编写服务端代码:需要首先在load_page声明ajaxpro.uility.registerTypeForajax(type)

编写代码前加入[AjaxPro.Ajaxmothod()]

分享到:
评论
Global site tag (gtag.js) - Google Analytics