常用的.NET代码(很基础的)

整理了一些常用的.NET代码,贴出来供大家参考,并希望我们一起搜集更多的内容。
一、为GridView添加索引列
< asp:TemplateField HeaderText ="ID" >
< ItemTemplate >
<% # Container.DataItemIndex + 1 %>
</ ItemTemplate >
</ asp:TemplateField >

二、批量删除列
模板列代码:
< asp:TemplateField HeaderText ="选择" >
< ItemTemplate >
< asp:CheckBox ID ="chkSelect" runat ="server" />
</ ItemTemplate >
</ asp:TemplateField >
全选:
for ( int i = 0 ; i < gv.Rows.Count; i ++ )
{
CheckBox chkSelect
= (CheckBox)gv.Rows[i].FindControl( " chkSelect " );
chkSelect.Checked
= true ;
}
反选:
for ( int i = 0 ; i < gv.Rows.Count; i ++ )
{
CheckBox chkSelect
= (CheckBox)gv.Rows[i].FindControl( " chkSelect " );
chkSelect.Checked
= ! chkSelect.Checked;
}
取消选择:
for ( int i = 0 ; i < gv.Rows.Count; i ++ )
{
CheckBox chkSelect
= (CheckBox)gv.Rows[i].FindControl( " chkSelect " );
chkSelect.Checked
= false ;
}
删除:
for ( int i = 0 ; i < gv.Rows.Count; i ++ )
{
CheckBox chkSelect
= (CheckBox)gv.Rows[i].FindControl( " chkSelect " );
if (chkSelect.Checked)
{
// 删除记录
}
}

三、删除表格选定记录
int id = ( int )MyDataGrid.DataKeys[e.Item.ItemIndex]; // 在调用前必须指定DataKeyNames属性为要获取

的主键。
string deleteCmd = " DELETE from Employee where emp_id = " + intEmpID.ToString();

四、为按钮添加确认对话框
button.Attributes.Add( " onclick " , " return confirm(’确认?’) " );

五、点击表格行链接另一页
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 + "

’);
" );
}

六、超连接列传递参数
 
< asp:HyperLinkColumn Target ="_blank" headertext ="ID号" DataTextField ="id" NavigateUrl ="aaa.aspx?id='<%# DataBinder.Eval(Container.DataItem, " 数据字段1")% > ' & name=' <% # DataBinder.Eval(Container.DataItem, " 数据字段2 " ) %> ' />

七、绑定日期格式
e.items.cell[ " time " ].text = DateTime.Parse(e.items.cell[ " time " ].text.ToString( " yyyy-MM-dd " ))

八、统一捕获异常 Global.asax中:
protected void Application_Error(Object sender, EventArgs e) {
if (Server.GetLastError() is HttpUnhandledException)
Server.Transfer(
" MyErrorPage.aspx " );

// 编写添加到日志的代码Log.add();
}

九、自定义异常处理
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">要记录信息的级别(error,warning,info,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
= EventLogEntryType.SuccessAudit;
       
break ;
      
default :
       LogEntryType
= EventLogEntryType.SuccessAudit;
       
break ;
     }

     EventLog eventLog
= new EventLog( " Application " ,

ApplicationConfiguration.EventLogMachineName, ApplicationConfiguration.EventLogSourceName );
     
// 写入事件日志
     eventLog.WriteEntry(messageText, LogEntryType);

    }
   
catch {} // 忽略任何异常
  }
 }
// class ApplicationLog
}

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值