ASP.NET常见的三十三种好用编码

ASP.NET常见的三十三种好用编码文中来源于: 发布 入录:

1. 开启新的对话框并传输主要参数:

传输主要参数:



response.write("<script>window.open(’*.aspx?id="+this.DropDownList1.SelectIndex+" id1="+...+"’)</script>")
接受主要参数:



string a = Request.QueryString("id");
string b = Request.QueryString("id1");


2.为按键加上会话框



Button1.Attributes.Add("onclick","return confirm(’确定?’)");
button.attributes.add("onclick","if(confirm(’are you sure...?’)){return true;}else{return false;}")


3.删掉报表选中纪录



int intEmpID = (int)MyDataGrid.DataKeys[e.Item.ItemIndex];
string deleteCmd = "DELETE from Employee where emp_id = " + intEmpID.ToString()


4.删掉报表纪录警示



private void DataGrid_ItemCreated(Object sender,DataGridItemEventArgs e)
{
switch(e.Item.ItemType)
{
case ListItemType.Item :
case ListItemType.AlternatingItem :
case ListItemType.EditItem:
TableCell myTableCell;
myTableCell = e.Item.Cells[14];
LinkButton myDeleteButton ;
myDeleteButton = (LinkButton)myTableCell.Controls[0];
myDeleteButton.Attributes.Add("onclick","return confirm(’您是不是明确要删掉这条信息内容’);");
break;
default:
break;
}

}


5.点一下报表行连接另外一页



private void grdCustomer_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
//点一下报表开启
if (e.Item.ItemType == ListItemType.Item  e.Item.ItemType == ListItemType.AlternatingItem)
e.Item.Attributes.Add("onclick","window.open(’Default.aspx?id=" + e.Item.Cells[0].Text + "’);");
}


双击鼠标报表联接到另外一页

在itemDataBind恶性事件中



if(e.Item.ItemType == ListItemType.Item  e.Item.ItemType == ListItemType.AlternatingItem)
{
string OrderItemID =e.item.cells[1].Text;
...
e.item.Attributes.Add("ondblclick", "location.href=’../ShippedGrid.aspx?id=" + OrderItemID + "’");
}
双击鼠标报表开启新一页



if(e.Item.ItemType == ListItemType.Item  e.Item.ItemType == ListItemType.AlternatingItem)
{
string OrderItemID =e.item.cells[1].Text;
...
e.item.Attributes.Add("ondblclick", "open(’../ShippedGrid.aspx?id=" + OrderItemID + "’)");
}


★非常留意:【?id=】 处不可以为 【?id =】

6.报表超联接本纪递主要参数


<asp:HyperLinkColumn Target="_blank" headertext="ID号" DataTextField="id" NavigateUrl="aaa.aspx?id=’
<%# DataBinder.Eval(Container.DataItem, "数据信息字段名1")%>’ name=’<%# DataBinder.Eval(Container.DataItem, "数据信息字段名2")%>’ />


7.报表点一下更改色调



if (e.Item.ItemType == ListItemType.Item e.Item.ItemType == ListItemType.AlternatingItem)
{
e.Item.Attributes.Add("onclick","this.style.backgroundColor=’#99cc00’;
this.style.color=’buttontext’;this.style.cursor=’default’;");
}


写在DataGrid的_ItemDataBound里



if (e.Item.ItemType == ListItemType.Item e.Item.ItemType == ListItemType.AlternatingItem)
{
e.Item.Attributes.Add("onmouseover","this.style.backgroundColor=’#99cc00’;
this.style.color=’buttontext’;this.style.cursor=’default’;");
e.Item.Attributes.Add("onmouseout","this.style.backgroundColor=’’;this.style.color=’’;");
}

8.有关时间文件格式

时间文件格式设置



e.items.cell["你的列"].text=DateTime.Parse(e.items.cell["你的列"].text.ToString("yyyy-MM-dd"))


9.获得不正确信息内容并到特定网页页面

不必应用Response.Redirect,而应当应用Server.Transfer

e.g


// in global.asax
protected void Application_Error(Object sender, EventArgs e) {
if (Server.GetLastError() is HttpUnhandledException)
Server.Transfer("MyErrorPage.aspx");

//其他的非HttpUnhandledException出现异常交到ASP.NET自身解决就okay了 :)
}


Redirect会造成post-back的造成进而遗失了不正确信息内容,因此网页页面导向性应当立即在网络服务器端实行,那样便可以在不正确解决网页页面获得错误信息内容并开展相对的解决

10.清除Cookie


Cookie.Expires=[DateTime];
Response.Cookies("UserName").Expires = 0


11.自定出现异常解决



//自定出现异常解决类
using System;
using System.Diagnostics;

namespace MyAppException
{
/// <summary>
/// 从系统软件出现异常类ApplicationException承继的运用程序出现异常解决类。
/// 全自动将出现异常內容纪录到Windows NT/2000的运用程序系统日志
/// </summary>
public class AppException:System.ApplicationException
{
public AppException()
{
if (ApplicationConfiguration.EventLogEnabled)LogEvent("出現一个不明不正确。");
}

public AppException(string message)
{
LogEvent(message);
}

public AppException(string message,Exception innerException)
{
LogEvent(message);
if (innerException != null)
{
LogEvent(innerException.Message);
}
}

//系统日志纪录类
using System;
using System.Configuration;
using System.Diagnostics;
using System.IO;
using System.Text;
using System.Threading;

namespace MyEventLog
{
/// <summary>
/// 恶性事件系统日志纪录类,出示恶性事件系统日志纪录适用
/// <remarks>
/// 界定了4个系统日志纪录方式 (error, warning, info, trace)
/// </remarks>
/// </summary>
public class ApplicationLog
{
/// <summary>
/// 将不正确信息内容纪录到Win2000/NT恶性事件系统日志中
/// <param name="message">必须纪录的文字信息内容</param>
/// </summary>
public static void WriteError(String message)
{
WriteLog(TraceLevel.Error, message);
}

/// <summary>
/// 将警示信息内容纪录到Win2000/NT恶性事件系统日志中
/// <param name="message">必须纪录的文字信息内容</param>
/// </summary>
public static void WriteWarning(String message)
{
WriteLog(TraceLevel.Warning, message);
}

/// <summary>
/// 将提醒信息内容纪录到Win2000/NT恶性事件系统日志中
/// <param name="message">必须纪录的文字信息内容</param>
/// </summary>
public static void WriteInfo(String message)
{
WriteLog(TraceLevel.Info, message);
}
/// <summary>
/// 将追踪信息内容纪录到Win2000/NT恶性事件系统日志中
/// <param name="message">必须纪录的文字信息内容</param>
/// </summary>
public static void WriteTrace(String message)
{
WriteLog(TraceLevel.Verbose, message);
}

/// <summary>
/// 文件格式化纪录到恶性事件系统日志的文字信息内容文件格式
/// <param name="ex">必须文件格式化的出现异常目标</param>
/// <param name="catchInfo">出现异常信息内容题目标识符串.</param>
/// <retvalue>
/// <para>文件格式后的出现异常信息内容标识符串,包含出现异常內容和追踪堆栈.</para>
/// </retvalue>
/// </summary>
public static String FormatException(Exception ex, String catchInfo)
{
StringBuilder strBuilder = new StringBuilder();
if (catchInfo != String.Empty)
{
strBuilder.Append(catchInfo).Append("\r\n");
}
strBuilder.Append(ex.Message).Append("\r\n").Append(ex.StackTrace);
return strBuilder.ToString();
}

/// <summary>
/// 具体恶性事件系统日志载入方式
/// <param name="level">要纪录信息内容的级別(,trace).</param>
/// <param name="messageText">要纪录的文字.</param>
/// </summary>
private static void WriteLog(TraceLevel level, String messageText)
{
try
{
EventLogEntryType LogEntryType;
switch (level)
{
case TraceLevel.Error:
LogEntryType = EventLogEntryType.Error;
break;
case TraceLevel.Warning:
LogEntryType = EventLogEntryType.Warning;
break;
case TraceLevel.Info:
LogEntryType = EventLogEntryType.Information;
break;
case TraceLevel.Verbose:
LogEntryType = essAudit;
break;
default:
LogEntryType = essAudit;
break;
}

EventLog eventLog = new EventLog("Application", ApplicationConfiguration.EventLogMachineName, ApplicationConfiguration.EventLogSourceName );
//载入恶性事件系统日志
eventLog.WriteEntry(messageText, LogEntryType);

}
catch {} //忽视一切出现异常
}
} //class ApplicationLog
}

12.Panel 横着翻转,竖向全自动拓展


<script language="javascript" for="document" event="onkeydown">
if(event.keyCode==13 event.srcElement.type!=’button’ event.srcElement.type!=’submit’ event.srcElement.type!=’reset’ event.srcElement.type!=’’ event.srcElement.type!=’textarea’);
event.keyCode=9;
</script>

14.DataGrid非常联接列



DataNavigateUrlField="字段名名" DataNavigateUrlFormatString="x?ID={0}"


15.DataGrid行随电脑鼠标掉色



private void DGzf_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemType!=ListItemType.Header)
{
e.Item.Attributes.Add( "onmouseout","this.style.backgroundColor=\""+e.Item.Style["BACKGROUND-COLOR"]+"\"");
e.Item.Attributes.Add( "onmouseover","this.style.backgroundColor=\""+ "#EFF3F7"+"\"");
}
}


联络0 
网站标识:福州市企业网站建设 福州市互联网企业 福州市微信小程序开发设计 福州市网站SEO提升 福州市APP开发设计

相关阅读