详细解读ASP常用三十三种代码

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 详细解读ASP常用三十三种代码

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 + "’)");

}

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.关于日期格式

  日期格式设定

DataFormatString="{0:yyyy-MM-dd}"

  我觉得应该在itembound事件中

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">要记录信息的级别(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

}

12.Panel 横向滚动,纵向自动扩展

<asp:panel style="overflow-x:scroll;overflow-y:auto;"></asp:panel>

  13.回车转换成Tab

<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>

onkeydown="if(event.keyCode==13) event.keyCode=9"

  14.DataGrid超级连接列

DataNavigateUrlField="字段名" DataNavigateUrlFormatString=""

  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"+"\"");

 }

}

  16.模板列

<ASP:TEMPLATECOLUMN visible="False" sortexpression="demo" headertext="ID">

<ITEMTEMPLATE>

<ASP:LABEL text=’<%# DataBinder.Eval(Container.DataItem, "ArticleID")%>’ runat="server" width="80%" id="lblColumn" />

</ITEMTEMPLATE>

</ASP:TEMPLATECOLUMN>

<ASP:TEMPLATECOLUMN headertext="选中">

<HEADERSTYLE wrap="False" horizontalalign="Center"></HEADERSTYLE>

<ITEMTEMPLATE>

<ASP:CHECKBOX id="chkExport" runat="server" />

</ITEMTEMPLATE>

<EDITITEMTEMPLATE>

<ASP:CHECKBOX id="chkExportON" runat="server" enabled="true" />

</EDITITEMTEMPLATE>

</ASP:TEMPLATECOLUMN>

  后台代码

protected void CheckAll_CheckedChanged(object sender, System.EventArgs e)

{

 //改变列的选定,实现全选或全不选。

 CheckBox chkExport ;

 if( CheckAll.Checked)

 {

  foreach(DataGridItem oDataGridItem in MyDataGrid.Items)

  {

   chkExport = (CheckBox)oDataGridItem.FindControl("chkExport");

   chkExport.Checked = true;

  }

 }

 else

 {

  foreach(DataGridItem oDataGridItem in MyDataGrid.Items)

  {

   chkExport = (CheckBox)oDataGridItem.FindControl("chkExport");

   chkExport.Checked = false;

  }

 }

}

  17.数字格式化

  【<%#Container.DataItem("price")%>的结果是500.0000,怎样格式化为500.00?】

<%#Container.DataItem("price","{0:¥#,##0.00}")%>

int i=123456;

string s=i.ToString("###,###.00");

18.日期格式化

  【aspx页面内:<%# DataBinder.Eval(Container.DataItem,"Company_Ureg_Date")%>

  显示为: 2004-8-11 19:44:28

  我只想要:2004-8-11 】

<%# DataBinder.Eval(Container.DataItem,"Company_Ureg_Date","{0:yyyy-M-d}")%>

  应该如何改?

  【格式化日期】

  取出来,一般是object((DateTime)objectFromDB).ToString("yyyy-MM-dd");

  【日期的验证表达式】

  A.以下正确的输入格式: 【2004-2-29】, 【2004-02-29 10:29:39 pm】, 【2004/12/31】

^((\d{2}((【02468】【048】)|(【13579】【26】))【-\/\s】?((((0?【13578】)|(1【02】))【-\/\s】?((0?【1-9】)|(【1-2】【0-9】)|(3【01】)))|(((0?【469】)|(11))【-\/\s】?((0?【1-9】)|(【1-2】【0-9】)|(30)))|(0?2【-\/\s】?((0?【1-9】)|(【1-2】【0-9】)))))|(\d{2}((【02468】【1235679】)|(【13579】【01345789】))【-\/\s】?((((0?【13578】)|(1【02】))【-\/\s】?((0?【1-9】)|(【1-2】【0-9】)|(3【01】)))|(((0?【469】)|(11))【-\/\s】?((0?【1-9】)|(【1-2】【0-9】)|(30)))|(0?2【-\/\s】?((0?【1-9】)|(1【0-9】)|(2【0-8】))))))(\s(((0?【1-9】)|(1【0-2】))\:(【0-5】【0-9】)((\s)|(\:(【0-5】【0-9】)\s))(【AM|PM|am|pm】{2,2})))?$

  B.以下正确的输入格式:【0001-12-31】, 【9999 09 30】, 【2002/03/03】

^\d{4}【-\/\s】?((((0【13578】)|(1【02】))【-\/\s】?((【0-2】【0-9】)|(3【01】)))|(((0【469】)|(11))【-\/\s】?((【0-2】【0-9】)|(30)))|(02【-\/\s】?【0-2】【0-9】))$

  【大小写转换】

HttpUtility.htmlEncode(string);

HttpUtility.htmlDecode(string)

  19.如何设定全局变量

  Global.asax中

  Application_Start()事件中

  添加Application【属性名】 = xxx;

  就是你的全局变量

  20.怎样作到HyperLinkColumn生成的连接后,点击连接,打开新窗口?

  HyperLinkColumn有个属性Target,将器值设置成"_blank"即可.(Target="_blank")

  【ASPNETMENU】点击菜单项弹出新窗口

  在你的menuData.xml文件的菜单项中加入URLTarget="_blank",如:

<?xml version="1.0" encoding="GB2312"?>

<MenuData ImagesBaseURL="images/">

<MenuGroup>

<MenuItem Label="内参信息" URL="Infomation.aspx" >

<MenuGroup ID="BBC">

<MenuItem Label="公告信息" URL="Infomation.aspx" URLTarget="_blank" LeftIcon="file.gif"/>

<MenuItem Label="编制信息简报" URL="NewInfo.aspx" LeftIcon="file.gif" />

......

  最好将你的aspnetmenu升级到1.2版

  21.读取DataGrid控件TextBox值

foreach(DataGrid dgi in yourDataGrid.Items)

{

 TextBox tb = (TextBox)dgi.FindControl("yourTextBoxId");

 tb.Text....

}

  23.在DataGrid中有3个模板列包含Textbox分别为 DG_ShuLiang (数量) DG_DanJian(单价) DG_JinE(金额)分别在5.6.7列,要求在录入数量及单价的时候自动算出金额即:数量单价=金额还要求录入时限制为 数值型.我如何用客户端脚本实现这个功能?

  〖思归〗

<asp:TemplateColumn HeaderText="数量">

<ItemTemplate>

<asp:TextBox id="ShuLiang" runat=’server’ Text=’<%# DataBinder.Eval(Container.DataItem,"DG_ShuLiang")%>’

onkeyup="javascript:DoCal()"

/>

<asp:RegularExpressionValidator id="revS" runat="server" ControlToValidate="ShuLiang" ErrorMessage="must be integer" ValidationExpression="^\d+$" />

</ItemTemplate>

</asp:TemplateColumn>

<asp:TemplateColumn HeaderText="单价">

<ItemTemplate>

<asp:TextBox id="DanJian" runat=’server’ Text=’<%# DataBinder.Eval(Container.DataItem,"DG_DanJian")%>’

onkeyup="javascript:DoCal()"

/>

<asp:RegularExpressionValidator id="revS2" runat="server" ControlToValidate="DanJian" ErrorMessage="must be numeric" ValidationExpression="^\d+(.\d)?$" />

</ItemTemplate>

</asp:TemplateColumn>

<asp:TemplateColumn HeaderText="金额">

<ItemTemplate>

<asp:TextBox id="JinE" runat=’server’ Text=’<%# DataBinder.Eval(Container.DataItem,"DG_JinE")%>’ />

</ItemTemplate>

</asp:TemplateColumn><script language="javascript">

function DoCal()

{

 var e = event.srcElement;

 var row = e.parentNode.parentNode;

 var txts = row.all.tags("INPUT");

 if (!txts.length || txts.length < 3)

  return;

 var q = txts【txts.length-3】.value;

 var p = txts【txts.length-2】.value;

 if (isNaN(q) || isNaN(p))

  return;

 q = parseInt(q);

 p = parseFloat(p);

 txts【txts.length-1】.value = (q p).toFixed(2);

}

</script>

24.datagrid选定比较底下的行时,为什么总是刷新一下,然后就滚动到了最上面,刚才选定的行因屏幕的关系就看不到了。

page_load

page.smartNavigation=true

  25.在Datagrid中修改数据,当点击编辑键时,数据出现在文本框中,怎么控制文本框的大小 ?

private void DataGrid1_ItemDataBound(obj sender,DataGridItemEventArgs e)

{

 for(int i=0;i<e.Item.Cells.Count-1;i++)

  if(e.Item.ItemType==ListItemType.EditType)

  {

   e.Item.Cells【i】.Attributes.Add("Width", "80px")

  }

}

  26.对话框

private static string ScriptBegin = "<script language=\"JavaScript\">";

private static string ScriptEnd = "</script>";

public static void ConfirmMessageBox(string PageTarget,string Content)

{

 string ConfirmContent="var retValue=window.confirm(’"+Content+"’);"+"if(retValue){window.location=’"+PageTarget+"’;}";

 ConfirmContent=ScriptBegin + ConfirmContent + ScriptEnd;

 Page ParameterPage = (Page)System.Web.HttpContext.Current.Handler;

 ParameterPage.RegisterStartupScript("confirm",ConfirmContent);

 //Response.Write(strScript);

}

  28.自定义分页代码:

  先定义变量 :

public static int pageCount; //总页面数

public static int curPageIndex=1; //当前页面

  下一页:

if(DataGrid1.CurrentPageIndex < (DataGrid1.PageCount - 1))

{

 DataGrid1.CurrentPageIndex += 1;

 curPageIndex+=1;

}

bind(); // DataGrid1数据绑定函数

  上一页:

if(DataGrid1.CurrentPageIndex >0)

{

 DataGrid1.CurrentPageIndex += 1;

 curPageIndex-=1;

}

bind(); // DataGrid1数据绑定函数

  直接页面跳转:

int a=int.Parse(JumpPage.Value.Trim());//JumpPage.Value.Trim()为跳转值

if(a<DataGrid1.PageCount)

{

 this.DataGrid1.CurrentPageIndex=a;

}

bind();

29.DataGrid使用:

  添加删除确认:

private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)

{

 foreach(DataGridItem di in this.DataGrid1.Items)

 {

  if(di.ItemType==ListItemType.Item||di.ItemType==ListItemType.AlternatingItem)

  {

   ((LinkButton)di.Cells【8】.Controls【0】).Attributes.Add("onclick","return confirm(’确认删除此项吗?’);");

  }

 }

}

  颜色样式交替:

ListItemType itemType = e.Item.ItemType;

if (itemType == ListItemType.Item )

{

 e.Item.Attributes【"onmouseout"】 = "javascript:this.style.backgroundColor=’#FFFFFF’;";

 e.Item.Attributes【"onmouseover"】 = "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ;

}

else if( itemType == ListItemType.AlternatingItem)

{

 e.Item.Attributes【"onmouseout"】 = "javascript:this.style.backgroundColor=’#a0d7c4’;";

 e.Item.Attributes【"onmouseover"】 = "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ;

}

  添加一个编号列:

DataTable dt= c.ExecuteRtnTableForAccess(sqltxt); //执行sql返回的DataTable

DataColumn dc=dt.Columns.Add("number",System.Type.GetType("System.String"));

for(int i=0;i<dt.Rows.Count;i++)

{

 dt.Rows【i】【"number"】=(i+1).ToString();

}

DataGrid1.DataSource=dt;

DataGrid1.DataBind();

  DataGrid1中添加一个CheckBox,页面中添加一个全选框

private void CheckBox2_CheckedChanged(object sender, System.EventArgs e)

{

 foreach(DataGridItem thisitem in DataGrid1.Items)

 {

  ((CheckBox)thisitem.Cells【0】.Controls【1】).Checked=CheckBox2.Checked;

 }

}

  将当前页面中DataGrid1显示的数据全部删除

foreach(DataGridItem thisitem in DataGrid1.Items)

{

 if(((CheckBox)thisitem.Cells【0】.Controls【1】).Checked)

 {

  string strloginid= DataGrid1.DataKeys【thisitem.ItemIndex】.ToString();

  Del (strloginid); //删除函数

 }

}

  30.当文件在不同目录下,需要获取数据库连接字符串(如果连接字符串放在Web.config,然后在Global.asax中初始化)

  在Application_Start中添加以下代码:

Application【"ConnStr"】=this.Context.Request.PhysicalApplicationPath+ConfigurationSettings.

   AppSettings【"ConnStr"】.ToString();

  31. 变量.ToString()

  字符型转换 转为字符串

12345.ToString("n"); //生成 12,345.00

12345.ToString("C"); //生成 ¥12,345.00

12345.ToString("e"); //生成 1.234500e+004

12345.ToString("f4"); //生成 12345.0000

12345.ToString("x"); //生成 3039 (16进制)

12345.ToString("p"); //生成 1,234,500.00%

  32、变量.Substring(参数1,参数2);

  截取字串的一部分,参数1为左起始位数,参数2为截取几位。 如:string s1 = str.Substring(0,2);

  33.在自己的网站上登陆其他网站:(如果你的页面是通过嵌套方式的话,因为一个页面只能有一个FORM,这时可以导向另外一个页面再提交登陆信息)

<SCRIPT language="javascript">

<!--

 function gook(pws)

 {

  frm.submit();

 }

//-->

</SCRIPT> <body leftMargin="0" topMargin="0" onload="javascript:gook()" marginwidth="0" marginheight="0">

<form name="frm" action=" " method="post">

<tr>

<td>

<input id="f_user" type="hidden" size="1" name="f_user" runat="server">

<input id="f_domain" type="hidden" size="1" name="f_domain" runat="server">

<input class="box" id="f_pass" type="hidden" size="1" name="pwshow" runat="server">

<INPUT id="lng" type="hidden" maxLength="20" size="1" value="5" name="lng">

<INPUT id="tem" type="hidden" size="1" value="2" name="tem">

</td>

</tr>

</form>

  文本框的名称必须是你要登陆的网页上的名称,如果源码不行可以用vsniffer 看看。

  下面是获取用户输入的登陆信息的代码:

string name;

name=Request.QueryString【"EmailName"】;

try

{

 int a=name.IndexOf("@",0,name.Length); //代码效果参考:http://www.zidongmutanji.com/bxxx/504288.html

 f_user.Value=name.Substring(0,a);

 f_domain.Value=name.Substring(a+1,name.Length-(a+1));

 f_pass.Value=Request.QueryString【"Psw"】;

}

catch

{

 Script.Alert("错误的邮箱!");

 Server.Transfer("index.aspx");

}

13:42

添加评论

固定链接

引用通告 (0)

记录它

程序设计笔记

固定链接

添加评论

C#常用函数和方法集汇总-2

 2、字符型转换 转为32位数字型

  Int32.Parse(变量) Int32.Parse("常量")

  3、 变量.ToString()

  字符型转换 转为字符串

  12345.ToString("n"); //生成 12,345.00

  12345.ToString("C"); //生成 ¥12,345.00

  12345.ToString("e"); //生成 1.234500e+004

  12345.ToString("f4"); //生成 12345.0000

  12345.ToString("x"); //生成 3039 (16进制)

  12345.ToString("p"); //生成 1,234,500.00%

4、变量.Length 数字型

  取字串长度:

  如: string str="中国";

int Len = str.Length ; //Len是自定义变量, str是求测的字串的变量名

  5、字码转换 转为比特码

  System.Text.Encoding.Default.GetBytes(变量)

  如:byte【】 bytStr = System.Text.Encoding.Default.GetBytes(str);

  然后可得到比特长度:

  len = bytStr.Length;

  6、System.Text.StringBuilder("") //代码效果参考:http://www.zidongmutanji.com/bxxx/452564.html

  字符串相加,(+号是不是也一样?)

  如:

System.Text.StringBuilder sb = new System.Text.StringBuilder("");

sb.Append("中华");

sb.Append("人民");

sb.Append("共和国");

  7、变量.Substring(参数1,参数2);

  截取字串的一部分,参数1为左起始位数,参数2为截取几位。

  如:string s1 = str.Substring(0,2);

  8、取远程用户IP地址

String user_IP=Request.ServerVariables【"REMOTE_ADDR"】.ToString();

  9、穿过代理服务器取远程用户真实IP地址:

if(Request.ServerVariables【"HTTP_VIA"】!=null){

string user_IP=Request.ServerVariables【"HTTP_X_FORWARDED_FOR"】.ToString();

}else{

string user_IP=Request.ServerVariables【"REMOTE_ADDR"】.ToString();

}

  10、存取Session值

Session【"变量"】;

  如,赋值:

Session【"username"】="小布什";

  取值:

Object objName=Session【"username"】;

String strName=objName.ToString();

  清空:

Session.RemoveAll();

  11、用超链接传送变量

String str=Request.QueryString【"变量"】;

  如在任一页中建超链接:<a href=Edit.aspx?fbid=23>点击</a>

  在Edit.aspx页中取值:String str=Request.QueryString【"fdid"】;

  12、创建XML文档新节点

  DOC对象.CreateElement("新建节点名");

  13、将新建的子节点加到XML文档父节点下

  父节点.AppendChild(子节点);

14、 删除//代码效果参考:http://www.zidongmutanji.com/bxxx/581224.html

节点

  父节点.RemoveChild(节点);

  15、向页面输出:Response

Response.Write("字串");

Response.Write(变量);

  跳转到URL指定的页面:

Response.Redirect("URL地址");

  16、查指定位置是否空字符

char.IsWhiteSpce(字串变量,位数)——逻辑型;   

  如:

string str="中国 人民";

Response.Write(char.IsWhiteSpace(str,2)); //结果为:True, 第一个字符是0位,2是第三个字符。

  17、查字符是否是标点符号

char.IsPunctuation(''字符'') --逻辑型

  如:

Response.Write(char.IsPunctuation(''A'')); //返回:False

  18、把字符转为数字,查代码点,注意是单引号。

  (int)''字符''

  如:

Response.Write((int)''中''); //结果为中字的代码:20013

  19、把数字转为字符,查代码代表的字符:(char)代码

  如:

Response.Write((char)22269); //返回“国”字。

  20、 清除字串前后空格: Trim()

  21、字串替换

  字串变量.Replace("子字串","替换为")

  如:

string str="中国";

str=str.Replace("国","央"); //将国字换为央字

Response.Write(str); //输出结果为“中央”

  再如:(这个非常实用)

string str="这是<script>脚本";

str=str.Replace("<","<font><</font>"); //将左尖括号替换为<font> 与 < 与 </font> (或换为<,但估计经XML存诸后,再提出仍会还原)

Response.Write(str); //显示为:“这是<script>脚本”

  如果不替换,<script>将不显示,如果是一段脚本,将运行;而替换后,脚本将不运行。

  这段代码的价值在于:你可以让一个文本中的所有HTML标签失效,全部显示出来,保护你的具有交互性的站点。

  具体实现:将你的表单提交按钮脚本加上下面代码:

string strSubmit=label1.Text; //label1是你让用户提交数据的控件ID。

strSubmit=strSubmit.Replace("<","<font><</font>");

  然后保存或输出strSubmit。

  用此方法还可以简单实现UBB代码

22、取i与j中的最大值:Math.Max(i,j)

 如 int x=Math.Max(5,10); // x将取值 10

  加一点吧 23、字串对比......

  23、字串对比一般都用: if(str1==str2){ } , 但还有别的方法:

  (1)、

string str1; str2

//语法: str1.EndsWith(str2); 检测字串str1是否以字串str2结尾,返回布尔值.如:

if(str1.EndsWith(str2)){ Response.Write("字串str1是以"+str2+"结束的"); }

  (2)、

//语法:str1.Equals(str2); 检测字串str1是否与字串str2相等,返回布尔值,用法同上.

  (3)、

//语法 Equals(str1,str2); __检测字串str1是否与字串str2相等,返回布尔值,用法同上.

  24、查找字串中指定字符或字串首次(最后一次)出现的位置,返回索引值:IndexOf() 、LastIndexOf(), 如:

str1.IndexOf("字"); //查找“字”在str1中的索引值(位置)

str1.IndexOf("字串");//查找“字串”的第一个字符在str1中的索引值(位置)

str1.IndexOf("字串",3,2);//从str1第4个字符起,查找2个字符,查找“字串”的第一个字符在str1中的索引值(位置)

  25、在字串中指定索引位插入指定字符:Insert() ,如:

str1.Insert(1,"字");在str1的第二个字符处插入“字”,如果str1="中国",插入后为“中字国”;

  26、在字串左(或右)加空格或指定char字符,使字串达到指定长度:PadLeft()、PadRight() ,如:

<%

string str1="中国人";

str1=str1.PadLeft(10,''1''); //无第二参数为加空格

Response.Write(str1); //结果为“1111111中国人” , 字串长为10

%>

  27、从指定位置开始删除指定数的字符:Remove()

  28.反转整个一维Array中元素的顺序。

har【】 charArray = "abcde".ToCharArray();

Array.Reverse(charArray);

Console.WriteLine(new string(charArray));

  29.判断一个字符串中的第n个字符是否是大写

string str="abcEEDddd";

Response.Write(Char.IsUpper(str,3));

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
3月前
|
开发框架 .NET API
一个简单的 ASP.NET Core 依赖注入例子,提高代码的可维护性和可扩展性
一个简单的 ASP.NET Core 依赖注入例子,提高代码的可维护性和可扩展性
|
5月前
|
开发框架 JavaScript 前端开发
详细解读ASP常用三十三种代码
详细解读ASP常用三十三种代码
27 0
|
12月前
|
开发框架 前端开发 JavaScript
Asp.net动态加载用户自定义控件,并转换成HTML代码
Asp.net动态加载用户自定义控件,并转换成HTML代码
48 0
|
SQL 开发框架 .NET
ASP.NET 数据绑定详解 代码+步骤(下)
ASP.NET 数据绑定详解 代码+步骤
|
开发框架 .NET 数据库
ASP.NET 数据绑定详解 代码+步骤(上)
ASP.NET 数据绑定详解 代码+步骤
|
开发框架 .NET 数据安全/隐私保护
ASP.NET验证控件合集 含代码演示
ASP.NET验证控件合集 含代码演示
|
开发框架 .NET Apache
301重定向代码合集(iis,asp,php,asp.net,apache)
301重定向代码合集(iis,asp,php,asp.net,apache)
315 0
|
存储 开发框架 前端开发
ASP.NET 中验证的自定义返回和统一社会信用代码的内置验证实现
本文介绍 ASP.NET 中内置的验证功能,并介绍如何自定义验证返回信息,最后以统一社会信用代码为例,实现自定义的数据验证。
229 0
ASP.NET 中验证的自定义返回和统一社会信用代码的内置验证实现
|
SQL 存储 开发框架
ASP.NET 用户和角色管理 附加代码详解
ASP.NET 用户和角色管理 附加代码详解
ASP.NET 用户和角色管理 附加代码详解
|
开发框架 .NET 索引
全网最全面的ASP.NET标准控件介绍及代码演示(下)
全网最全面的ASP.NET标准控件介绍及代码演示(下)
全网最全面的ASP.NET标准控件介绍及代码演示(下)