杂项1

 


1. 获取本机ip地址:

(1) using System.Net; 引入命名空间

(2) public void GetIp()
        {
            string strHostName = Dns.GetHostName(); //得到本机的主机名
            IPHostEntry ipEntry = Dns.GetHostEntry(strHostName); //取得本机IP
            foreach (System.Net.IPAddress ip in ipEntry.AddressList)
            {
                Response.Write(ip);
            }
        }

2. 5秒后返回:

   <SCRIPT language=javascript>
        function go()
        {
         window.history.go(-1);
        }
        setTimeout("go()",5000);//setTimeout("方法名","超时时间")
</SCRIPT>

3. 加入收藏:<a href="javascript:window.external.AddFavorite('index.htm'/*tpa=*/, '诚豫通家具')" class="STYLE55 STYLE9"> 加入收藏 </a>

4.框架集:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Index.aspx.cs" Inherits="Sys_Manage_Test" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>综合文档查询系统</title>
</head>
<frameset rows="127,*,11" frameborder="no" border="0" framespacing="0">
 <frame src="top.aspx" noresize="noresize" frameborder="NO" name="topFrame" scrolling="no" marginwidth="0" marginheight="0" target="tops" />
 
  <frameset cols="184,*"   id="frame">
 <frame src="left.aspx" name="leftFrame" noresize="noresize" marginwidth="0" marginheight="0" frameborder="1" scrolling="no" target="lefts" />
 <frame src="Title_Add.aspx" name="main" marginwidth="0" marginheight="0" frameborder="1" scrolling="auto" target="main" />
  </frameset>
  <noframes>
  <body>
    <form id="form1" runat="server">
    </form>
</body>
</noframes>
</html>

5. 两个String类型日期,计算差值:

<1>. if(DateTime.Parse(BeginTime)>DateTime.Parse(EndTime))//比较大小

<2>. DateTime t1 =Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd"));
            DateTime t2= Convert.ToDateTime("2012-07-01");
            int days = Math.Abs(((TimeSpan)(t1-t2)).Days);
            Response.Write(days);

//计算差值

6.两个页面传值的方法:

<1>. 使用QueryString变量
  QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。下面是一个例子:
a.aspx的C#代码
private void Button1_Click(object sender, System.EventArgs e)
{
string s_url;
s_url = "b.aspx?name=" + Label1.Text;
Response.Redirect(s_url);
}

b.aspx中C#代码
private void Page_Load(object sender, EventArgs e)
{
Label2.Text = Request.QueryString["name"];
}

2. 使用Application 对象变量
  Application对象的作用范围是整个全局,也就是说对所有用户都有效。其常用的方法用Lock和UnLock。
a.aspx的C#代码
private void Button1_Click(object sender, System.EventArgs e)
{
Application["name"] = Label1.Text;
Server.Transfer("b.aspx");
}

b.aspx中C#代码
private void Page_Load(object sender, EventArgs e)
{
string name;
Application.Lock();
name = Application["name"].ToString();
Application.UnLock();
}

3. 使用Session变量
  想必这个肯定是大家使用中最常见的用法了,其操作与Application类似,作用于用户个人,所以,过量的存储会导致服务器内存资源的耗尽。
a.aspx的C#代码
private void Button1_Click(object sender, System.EventArgs e)
{
Session["name"] = Label.Text;
}

b.aspx中C#代码
private void Page_Load(object sender, EventArgs e)
{
string name;
name = Session["name"].ToString();
}

4. 使用Cookie对象变量
  这个也是大家常使用的方法,与Session一样,其是什对每一个用户而言的,但是有个本质的区别,即Cookie是存放在客户端的,而session是存放在服务器端的。而且Cookie的使用要配合ASP.NET内置对象Request来使用。

a.aspx的C#代码
private void Button1_Click(object sender, System.EventArgs e)
{
HttpCookie cookie_name = new HttpCookie("name");
cookie_name.Value = Label1.Text;
Reponse.AppendCookie(cookie_name);
Server.Transfer("b.aspx");
}

b.aspx中C#代码
private void Page_Load(object sender, EventArgs e)
{
string name;
name = Request.Cookie["name"].Value.ToString();
}

<5>. 使用Server.Transfer方法
  这个才可以说是面象对象开发所使用的方法,其使用Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的,简洁有效。
a.aspx的C#代码
public string Name
{
get{ return Label1.Text;}
}
private void Button1_Click(object sender, System.EventArgs e)
{
Server.Transfer("b.aspx");
}

b.aspx中C#代码
private void Page_Load(object sender, EventArgs e)
{
a newWeb; //实例a窗体
newWeb = (source)Context.Handler;
string name;
name = newWeb.Name;
}

6.slq 排名语句:

select t.* from
  (
   select uid,row_number() over(order by uid desc) as num from users group by uid
  ) t

 where num=5

//取id第五大的数据  ,row_number()是sql内部函数,row_number() over(order by uid desc) as num 从大到小排序num 必须和group by连用,
 (
   select  uid,row_number() over(order by uid desc) as num from users group by uid
  ) 作为一个新表t

7.判断datalist是否为空:

 //判断回复是否为空
        public bool IsNull(int cmid)
        {
            con.Open();
            SqlCommand cmd = new SqlCommand();
            cmd.CommandText = "select count(*) from ReplyMessage where CMid='"+cmid+"'";
            cmd.Connection = con;
            int result = Convert.ToInt32(cmd.ExecuteScalar());
            if (result > 0)
            {
                return false;//不为空
            }
            else
            {
                return true;//为空
            }
        }

8.datalist 取每一行主键:

<asp:ImageButton class="DelClass" ID="IBDelClass" runat="server" CommandArgument='<%#Eval("Id")%>' CommandName="Del" ImageUrl="~/Images/Delete.gif"  ToolTip="删除该类..."/>
//CommandArgument绑定每一样的主键
后台取值:
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
        {
            int id = Convert.ToInt32(e.CommandArgument.ToString());
           //取到每行主键值后你修改或删除就都可以了
        }

9. 确认删除:

1protected void Button1_Load(object sender, EventArgs e)
    {
        Button1.Attributes.Add("onclick", "return confirm('确认删除选中用户吗?')");
    } 

2<script language="">
function winconfirm(){
    question = confirm("确认删除吗?")   
}
</script> 
<a href="javascript:winconfirm()">删除</a>

10.如何调用js文件:调用页面代码:<script type="text/javascript" src="../ProvinceCity.js"></script>

11. 上传大容量文件:

 <system.web>
   <httpRuntime executionTimeout="1000" maxRequestLength="409600" useFullyQualifiedRedirectUrl="false"/>

</system.web>

在web.config中加入中间的一段(小于400M的都可以,再大了好像要用专用软件了)

12.设置label颜色,及textbox的值改变事件:

protected void Tuname_TextChanged(object sender, EventArgs e)
        {
            Users user = new Users();
            string name = Tuname.Text;
            if (user.Uname_Exists(name))
            {
                LbTs.Text = "用户名已存在!";
                LbTs.ForeColor = System.Drawing.Color.Red; //设置为红色
            }
            else
            {
                LbTs.Text = "恭喜您,可以使用!";
                LbTs.ForeColor = System.Drawing.Color.Green;//设置为绿色
            }
        }

13.手机正则表达式:

^[1][3-5,8]\d{9}$   前面的是全部
^((0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$  固定电话
[\u2E80-\u9FFF]+$ 只能输入中文
(^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$)|(^((\(\d{3}\))|(\d{3}\-))?(1[3458]\d{9})$) 固话手机全可以
^[A-Za-z0-9]{6,13}$ 密码6到13位数字或字母
^([0-9]*)$正整数
(注意一定要把空格删掉)(注意一定要把空格删掉)(注意一定要把空格删掉)(注意一定要把空格删掉)(注意一定要把空格删掉)

14.冒泡排序法,随机数字排序:

      public void SortNumber()

          {

            string array1 = txtSort.Text.Trim();//在txtSort中输入随即数字以“,”为分隔符
            string[] array21 = array1.Split(',');
            int dxiao = array21.Length;
            int[] array = new int[dxiao];
            int temp = 0;
            //冒泡排序
            for (int i = 0; i < array.Length; i++)
            {
                array[i] = Convert.ToInt32(array21[i]);
            }
            for (int i = 0; i < array.Length - 1; i++)
            {
                for (int j = i + 1; j < array.Length; j++)
                {
                    if (array[j] < array[i])//从小到大
                    {
                        temp = array[i];
                        array[i] = array[j];
                        array[j] = temp;
                    }
                }
            }
            for (int i = 0; i < dxiao; i++)
            {
                lbSort.Text = lbSort.Text + " " + Convert.ToString(array[i]);//用label显示排序后的数组
            }

       }

15. 退出系统: Response.Write("<script>alert('谢谢使用!');opener=null;window.parent.close();</script>");//(框架集也可以)

16.网页打开的时间:

 <script language=javascript>
var sec=0;var min=0;var hou=0;flag=0;idt=window.setTimeout("update();",1000);
function update()

 if (min==19 && sec==59) {alert("还剩10分钟,请抓紧时间答卷!");}
 if (min==30) {alert("考试时间结束!");}// document.getElementById("Button1").click(); //规定时间结束后自动提交按钮
 sec++;
 if(sec==60){sec=0;min+=1;}
 if(min==60){min=0;hou+=1;}
 if((min>0)&&(flag==0)){flag=1;}
 document.getElementById("Text1").value="已用时间:"+hou+"时"+min+"分"+sec+"秒";
 idt=window.setTimeout("update();",2000);
 
}
</script>

1 上述代码放入head中
2 from中放入一个html控件Text1,用于显示时间
3 <body οnlοad="update()"> 页面加载时就运行脚本

17注意:

<1> Gridview 在本页面编辑时变成文本框:
  
int qx = int.Parse(((DropDownList)GVuser.Rows[e.RowIndex].Cells[4].FindControl("Dropqx")).SelectedValue);//变成DropDownlist(在编辑模板中只能用FindControl)
 string uname = ((TextBox)(GVuser.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString();//变成TextBox
  

  注意1.在编辑事件中加:
    protected void GVsort_RowEditing(object sender, GridViewEditEventArgs e)
    {
        GVsort.EditIndex = e.NewEditIndex;
        SortBind();
    }
   2取消编辑:
    protected void GVsort_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
        GVsort.EditIndex = -1;
        SortBind();
    }
   3 如果是图片按钮不是自带的:要再编辑模板中加两个按钮1确定(CommandName=update)2取消(CommandName=cancel) 图片编
     按钮的CommandName=edit
2  图片按钮删除时,只需将图片按钮的CommandName=delete ,再在rowdeleting事件中加:
       protected void GVsort_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        Sort s = new Sort();
        int sid = Convert.ToInt32(GVsort.DataKeys[e.RowIndex].Value.ToString());//Gridview里取主键
        if (s.SortDel(sid))
        {
            Response.Write("<script>alert('删除成功!');</script>");
            SortBind();
        }
        else
        {
            Response.Write("<script>alert('删除失败!');</script>");
        }
    }
3 查找图片按钮,在rowdatabind事件中加:
    if (e.Row.RowType == DataControlRowType.DataRow)
        {
            if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
            {
                ((ImageButton)e.Row.Cells[4].FindControl("IDel")).Attributes.Add("onclick", "javascript:return                  confirm('确认删除吗?')");
            }
        }
4 .Datalist 中取选中项的主键值:int id = Convert.ToInt32(DataList1.DataKeys[e.Item.ItemIndex].ToString());
   Gridview 中取选中项的主键值:int id = Convert.ToInt32(Gridview1.DataKeys[e.RowIndex].Value.ToString());// Gridview里取主键
 int qx = Convert.ToInt32(((DropDownList)(GvUsers.Rows[e.RowIndex].Cells[4].FindControl("DropQx"))).SelectedValue);

5.给按钮添加提示对话框: 
 protected void Bdel_Load(object sender, EventArgs e)
    {
        Bdel.Attributes.Add("onclick", "return confirm('确认删除选中信息吗?')");
    }


6 Webconfig中的链接字符串: 
          <appSettings>
  <add key="StrCon" value="Data Source=.;Initial Catalog=WorkMeeting;User ID=sa;Password=123456"/>
  </appSettings>
7 在sqlhelp中取链接字符串:
   先引用:using System.Configuration;
  SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["StrCon"].ToString());
8 // 防注入写法: cmd.Parameters.Add("@sid",SqlDbType.Int).Value=sid;
 public DataTable Test_Sel(int sid)
        {
            try
            {
                string str = "select * from Sort where sid=@sid ";
                cmd = SqlHelper.CreateDbCommand(str, conn);
                //cmd.Parameters.AddWithValue("@sid",sid);
                cmd.Parameters.Add("@sid",SqlDbType.Int).Value=sid;
                conn.Open();
                DataTable dt = new DataTable();
                dt.Load(cmd.ExecuteReader());
                return dt;
            }
            catch (Exception e)
            {

                throw e;
            }
            finally
            {
                conn.Close();
            }
        }
9 确认删除和Gridview改变背景色:
 protected void GvPower_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
                {
                    ((ImageButton)e.Row.Cells[3].FindControl("IDel")).Attributes.Add("onclick", "javascript:return confirm('确认删除吗?')");
                }
                e.Row.Attributes.Add("onmouseover", "this.style.backgroundColor='#E6F5FA'");
                e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=''");
            }           
        }

<10> asp.net 和access数据库连接的字符串: (注意:cl.mdb放在App_Data下面,我暂时没找到更好的地方)
OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|Cl.mdb");

<11> 点击按钮关闭框架集整个窗口: Response.Write("<script>alert('谢谢使用!');opener=null;window.parent.close();</script>");

18.网站提示信息:

<1> 创建方法:
        public static void Alert(Page page, string msg,string pageurl)
        {
            page.ClientScript.RegisterStartupScript(page.GetType(), "msg", "alert('" + msg + "');location.href='" +             pageurl + "';", true);
        }
<2> 调用 :
            string msg = "Test";
            string pageurl = "Default.aspx";
            Alert(this,msg,pageurl);

19. 文本框灰色提示信息:

1在head中加入样式:
   <style type="text/css">
<!--
.a1 {
color: #CCCCCC;
}
.a2 {
color: #000;
}
-->
</style>
2在body中加入脚本(注:Tb1 为文本框)
<script language="javascript">
window.οnlοad=function(){
s('Tb1','Your message1');s('n1','Your message2')
}
function g(a){return document.getElementById(a)}
function s(n,v){
with(g(n)){
className='a1';value=v;
οnfοcus=function(){if(value==v)value='';className='a2'}
οnblur=function(){if(value==''){value=v;className='a1'}}
}
}
</script>

20.文本框最大输入数字:

<script language="JavaScript">

<!-- [Step1]: 这里可以更改输入字符的最大字数 -->
maxLength = 100;
function MaxInput(form) {
if (form.message.value.length > maxLength)
form.message.value = form.message.value.substring(0, maxLength);
else form.TLength.value = maxLength - form.message.value.length;
}
</script>

<form name=myform>
<!-- [Step2]: 这里能够改变页面显示信息的大小和字体 -->
<font size="2" face="arial, helvetica, sans-serif">仅允许您输入100个字符<br>
<!-- [Step3]: 在此可以更改文本区域的行和列 -->
<textarea name=message wrap=physical rows=5 cols=30  onKeyDown="MaxInput(this.form)" onKeyUp="MaxInput(this.form)"></textarea>
<!-- [Step4]: 这里能够修改页面显示的文本信息 -->
<br>还剩下
<!-- [Step5]: 在此可以改变只读文本显示的列长度 -->
<!-- [Step6]: 这里能够更改只读文本的数值 -->
<input readonly type=text name=TLength size=3  value="100">个字符</font>
</form>

 

21. asp.net对文件的操作:

1首先引入命名空间:using System.IO;

 2创建并写入内容
  protected void Button2_Click(object sender, EventArgs e)
        {
            File.CreateText(@"D:\11.txt");          
            StreamWriter sw = new StreamWriter( @"D:\11.txt");
            sw.WriteLine("33");
            sw.Close();
            // File.Delete("D:\\1.doc"); //删除文件
        }
3读取内容:
protected void Button1_Click(object sender, EventArgs e)
        {          
            StreamReader sr = new StreamReader(@"D:\11.txt");
            string read = sr.ReadLine().ToString();//读取一行
            // string read = sr.ReadToEnd();//读取到结尾,但是一行
            sr.Close();
            Response.Write(read);
        }

22.显示时间:

<body οnlοad=startclock()>

<form name="clock">
<script language="JavaScript">
var timerID = null;
var timerRunning = false;
function stopclock (){
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;}
function startclock () {
stopclock();
showtime();}
function showtime () {
var now = new Date();
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds()
var timeValue = now.getYear()+"年"+(now.getMonth()+1)+"月"+now.getDate()+"日" +((hours >= 12) ? " 下午 " : " 上午 " )
timeValue += ((hours >12) ? hours -12 :hours)
timeValue += ((minutes < 10) ? ":0" : ":") + minutes
timeValue += ((seconds < 10) ? ":0" : ":") + seconds
document.clock.thetime.value = timeValue;
timerID = setTimeout("showtime()",1000);
timerRunning = true;}
</script>
<input name="thetime" style="font-size: 9pt;color:#000000;border:1px solid #FFFFFF; ; " size="28"></form>
</body>

23.项目中加flash文件:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="860" height="270">
      <param name="movie" value="111.swf" />
      <param name="quality" value="high" />
      <embed src="111.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="860" height="270"></embed>
      </object>

将上面的object项目放入你想要的地方

24. 前台引用后台方法: <%#Switch(Eval("unit")) %>

25.自动请求本页面地址:string url=Request.Url.AbsoluteUri; //自动请求本页面的地址

26.获取浏览器关闭事件:

<script type="text/javascript">
window.onbeforeunload = function() //author: meizz
{
 var n = window.event.screenX - window.screenLeft;
 var b = n > document.documentElement.scrollWidth-20;
 if(b && window.event.clientY < 0 || window.event.altKey){
    return "退出系统后播放页面不再积分!";
 }
};
</script>

27 web.config 链接字符串:

  <appSettings>
    <add key="conStr" value="server=.;database=test;User ID=sa;Password=123456"/>
  </appSettings>
  <connectionStrings>
    <add name="conStr" connectionString="server=.;database=test;User ID=sa;Password=123456"/>
  </connectionStrings>

下面是asp.net链接Access的方法法:(注意:数据库文件即AuditSystem.config必须放在App_Data下面;12.0支持access2010到2003而4.0只支持2003;好处:无论是什么文件类型系统都会解析为数据库类型)

    <add name="conStr" connectionString="Provider=Microsoft.Jet.OLEDB.12.0;Data Source=|DataDirectory|AuditSystem.config"/>

 使用方法:

记得引用 using System.Configuration; 如果ConfigurationManager还是不能用要在项目中的引用添加System.Configuration的引用

  public static string conStr = ConfigurationSettings.AppSettings["conStr"].ToString(); 
  public static readonly string conStr = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString;

28  计算连个日期的各种差值

DATEDIFF(datepart,startdate,enddate)

startdateenddate 参数是合法的日期表达式。

datepart 参数可以是下列的值:

datepart缩写
yy, yyyy
季度qq, q
mm, m
年中的日dy, y
dd, d
wk, ww
星期dw, w
小时hh
分钟mi, n
ss, s
毫秒ms
微妙mcs
纳秒ns

实例

例子 1

使用如下 SELECT 语句:

SELECT DATEDIFF(day,'2008-12-29','2008-12-30') AS DiffDate

结果:

DiffDate
1

例子 2

使用如下 SELECT 语句:

SELECT DATEDIFF(day,'2008-12-30','2008-12-29') AS DiffDate

结果:

DiffDate
-1
29  Gridview中选择行:
protected void BtnChose_Click(object sender, EventArgs e)
        {
            string choseStr = "";
            for (int i = 0; i <= GridContent.Rows.Count - 1; i++)
            {
                CheckBox cbox = (CheckBox)GridContent.Rows[i].FindControl("CheckBox1");              
                if (cbox.Checked == true)
                {
                    string aid = GridContent.DataKeys[i].Value.ToString() ;
                    choseStr += aid+",";                   
                  
                }
            }
            Response.Write(choseStr);
        }

 30 aspx用.cs的非私有方法:

 1.取方法aspx页面: <%=GetStr() %> .//后面没有分号

cs页面:

public  string GetStr()
        {
            return "HJM";
        }

2 . 取字符串:<%=Str %>

 public string Str = "KKK";

31 弹出窗口关闭时不弹出页面:

在head中加入<base target=_self>

32 按钮单击事件中执行js方法:

 protected void BtnChose_Click(object sender, EventArgs e)
        {
                Page.ClientScript.RegisterStartupScript(GetType(),"info","GetStr('"+Str+"')",true);//只需要动第三个参数就行了,即为你的js方法!
        }       

 33 TextBox1设置了ReadOnly="True" 属性取不到里面的值的解决方法:

1用Request.Form["TextBox1"].Trim()取值;

2或不设置ReadOnly="true"而是设置οnfοcus="this.blur()" 也是不能输入的意思

34 MessageBoxButtons根据用户选择确定或取消跳转到不同的页面

                   MessageBoxButtons messButton = MessageBoxButtons.OKCancel;
                    DialogResult dr = MessageBox.Show("添加成功,还要继续添加吗?点击“确定”继续添加,“取消”返回列表页面!", "提示", messButton);
                    if (dr == DialogResult.Cancel)
                    {
                        Response.Redirect("Result_Manager.aspx");
                    }
                    else//选择的是“确定”按钮!
                    {
                        TextResult.Text = "";//留在本页或跳到别的页面
                    }

35 按钮单击后不可用:

<asp:Button ID="btn" runat="server" Text="Test" OnClick="btn_Click"  OnClientClick="this.disabled=true" UseSubmitBehavior="false" />

36,支付宝接口
 http://open.taobao.com/doc/api_cat_detail.htm?cat_id=10238  

40 js中隐藏和显示table

<script>

function show(){

 var myTable= document.getElementById("myTable"); myTable.style.display="block";

}

function hidden(){

var myTable= document.getElementById('myTable); myTable.style.display="none";

}

</script>

41 .

 
 
/// 获得客户端IP
     /// 
     /// <returns></returns>
     private  string  getIp()
     {
         // 穿过代理服务器取远程用户真实IP地址
         string  Ip =  string .Empty;
         if  (Request.ServerVariables[ "HTTP_VIA" ] !=  null )
         {
             if  (Request.ServerVariables[ "HTTP_X_FORWARDED_FOR" ] ==  null )
             {
                 if  (Request.ServerVariables[ "HTTP_CLIENT_IP" ] !=  null )
                     Ip = Request.ServerVariables[ "HTTP_CLIENT_IP" ].ToString();
                 else
                     if  (Request.ServerVariables[ "REMOTE_ADDR" ] !=  null )
                         Ip = Request.ServerVariables[ "REMOTE_ADDR" ].ToString();
                     else
                         Ip =  "202.96.134.133" ;
             }
             else
                 Ip = Request.ServerVariables[ "HTTP_X_FORWARDED_FOR" ].ToString();
        
         else  if  (Request.ServerVariables[ "REMOTE_ADDR" ] !=  null )
         {
             Ip = Request.ServerVariables[ "REMOTE_ADDR" ].ToString();
         }
         else
         {
             Ip =  "202.96.134.133" ;
         }
         return  Ip;
     }

  42 提示框,根据确定和取消跳转到不同的页面:

 Response.Write("<script>if(window.confirm('你去哪?')){window.location.href='Login.aspx'}else{window.location.href='Test.aspx'}</script>");

43. asp.net链接有密码的access数据库:

    <add name="conStr" connectionString=" Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=true;Data Source=|DataDirectory|AuditSystem.mdb;Jet OLEDB:Database Password=880514" />

44 js 动态显示时间:

<script type="text/javascript"> function t(){       var tt=new Date();     // 返回年份     

 var year=tt.getFullYear();     var year1=tt.getYear();       // 返回月份(0-11) 月份应该加 1  

   var month=tt.getMonth()+1;     // 返回星期     

var day=tt.getDay()+1;     // 返回 日    

  var date=tt.getDate();     // 返回 小时   

   var hour=tt.getHours();     // 返回 分   

   var minute=tt.getMinutes();     // 返回 秒  

    var second=tt.getSeconds();     // 返回毫秒  

    var hm=tt.getMilliseconds();         

  var pro_hm=Math.ceil(hm/100);     

var str='现在时间'+year+'年';   

   if(month<10){str+='0'+month+'月';}else{str+=month+'月';}   

  if(date<10){str+='0'+date+'日';}else{str+=date+'日';}    

 if(hour<10){str+='0'+hour+'时';}else{str+=hour+'时';}    

  if(minute<10){str+='0'+minute+'分';}else{str+=minute+'分';}    

 if(second<10){str+='0'+second+'秒';}else{str+=second+'秒';}    

  if(pro_hm<10){str+='0'+pro_hm+'毫秒';}else{str+=pro_hm+'毫秒';}    

document.getElementById("timer").innerHTML=str; //前面为div显示 也可以是document.getElementById("timer").value=str; (input显示)

 } 

 setInterval('t()',100);   </script>  

 

<div id="timer"></div>

45.js 找到输入框控件,并设置其字体颜色:

 var coms=document.getElementById("comments"); 
  if(coms.value==""){coms.style.color="#ccc";  coms.value="请您对该学习班进行评价,谢谢!";}

   obj.style.backgroundColor=color;  //设置背景颜色

//上面是浅灰色提示,下面是得到焦点后提示消失

 function getfocus(){ var coms=document.getElementById("comments");  if(coms.value=="请您对该学习班进行评价,谢谢!") {coms.style.color="#000";coms.value="";}  } 

 46 web.config 中appSettings的配置

 <appSettings>
  <!-- 连接字符串是否加密 -->
  <add key="ConStringEncrypt" value="false"/>
  <!--主数据库服务器 -->
  <add key="DataBaseServer" value="."/>
  <!--主数据库名称 -->
  <add key="DataBaseName" value="bcwdata"/>
  <!--主数据库用户 -->
  <add key="DataBaseUid" value="sa"/>
  <!--主数据库密码 -->
  <add key="DataBasePwd" value="123"/>
  <!--后台目录名 -->
  <add key="AdminPath" value="Manage"/>
  <!--界面识别变量 -->
  <add key="VE" value="ve"/>
  <!--身份识别变量 -->
  <add key="SID" value="u"/>
 </appSettings>

47.京东sso单点登录:http://blog.chinaunix.net/uid-25508399-id-3431705.html

48 标题闪动js:

(1)

<script>
var g_blinkswitch = 0;
var g_blinktitle = document.title;
function blinkNewMsg()
{

 document.title = g_blinkswitch % 2==0 ? "【   】 - " + g_blinktitle : "【新消息】 - " + g_blinktitle;
 g_blinkswitch++;

}

setInterval(blinkNewMsg, 1000);
</script>

 (2)

 <script>
        setTimeout("setTitle1()", "1000");

        function setTitle1() {
            document.title = "【新消息】";         
            setTimeout("setTitle2()", "1000");
        }

        function setTitle2() {
            document.title = "【     】";
            setTimeout("setTitle1()", "1000");
        }

</script>

49  enter键提交信息的js:

<script type="text/javascript">
document.onkeydown = function(e){
        if(!e) e = window.event;//火狐中是 window.event
        if((e.keyCode || e.which) == 13){
            var obtnSearch=document.getElementById("btnSearch")
           // obtnSearch.focus();//让另一个控件获得焦点就等于让文本输入框失去焦点(如果加上这句会提交2次)
            obtnSearch.click();
        }
    }


</script>

50 asp.net获取网址URL:

设当前页完整地址是:http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli
"http://"是协议名
"www.jb51.net"是域名
"aaa"是站点名
"bbb.aspx"是页面名(文件名)
"id=5&name=kelli"是参数
【1】获取 完整url (协议名+域名+站点名+文件名+参数)

代码如下:

string url=Request.Url.ToString();
url= http://www.jb51.net/aaa/bbb.aspx?id=5&name=kelli


【2】获取 站点名+页面名+参数:

代码如下:

string url=Request.RawUrl;
(或 string url=Request.Url.PathAndQuery;)
url= /aaa/bbb.aspx?id=5&name=kelli


【3】获取 站点名+页面名:

 代码如下:

string url=HttpContext.Current.Request.Url.AbsolutePath;
(或 string url= HttpContext.Current.Request.Path;)
url= aaa/bbb.aspx


【4】获取 域名:

代码如下:

string url=HttpContext.Current.Request.Url.Host;
url= www.jb51.net


【5】获取 参数:

代码如下:

string url= HttpContext.Current.Request.Url.Query;
url= ?id=5&name=kelli



 代码如下:

Request.RawUrl:获取客户端请求的URL信息(不包括主机和端口)------>/Default2.aspx
Request.ApplicationPath:获取服务器上ASP.NET应用程序的虚拟路径。------>/
Request.CurrentExecutionFilePath:获取当前请求的虚拟路径。------>/Default2.aspx
Request.Path:获取当前请求的虚拟路径。------>/Default2.aspx
Request.PathInfo:取具有URL扩展名的资源的附加路径信息------>
Request.PhysicalPath:获取与请求的URL相对应的物理文件系统路径。------>E:\temp\Default2.aspx
Request.Url.LocalPath:------>/Default2.aspx
Request.Url.AbsoluteUri:------>http://localhost:8080/Default2.aspx
Request.Url.AbsolutePath:---------------------------->/Default2.aspx


51 弹出确认框:Response.Write("<script>if(confirm('请先更改密码!')==true) {window.location.href('Login.aspx');} </script>");
52 asp.net 读取txt文档

    protected void Page_Load(object sender, EventArgs e)
        {
            StreamReader sr = new StreamReader(@"G:\1.txt", System.Text.Encoding.Default);
            String input = sr.ReadToEnd();
            sr.Close();

            input = input.Replace("\r\n", "<br>").Replace("\n", "<br>").Replace("<br>", "|");
            string[] lineStr = input.Split('|');
            foreach (string str in lineStr)
            {
                Response.Write(str+"||<br>");
            }
            Response.Write("长度:"+lineStr.Length);
            Response.End();           
        }

53  讲字符串转换为字符数组:

            string str = "abcdefgh";
            char[] strList = str.ToCharArray(0,str.Length);

54 子窗口关闭并刷新父窗口

1 父窗口:

<script type="text/javascript">
function openBrWindowInCentre(theURL,width,height) {
      var left, top;
      left = (window.screen.availWidth - width) / 2;
      top = (window.screen.availHeight - height) / 2;
      var per = 'width=' + width + ',height=' + height + ',left=' + left + ',top=' + top + ',screenX=' + left + ',screenY=' + top;
      window.open(theURL,'',per);
    }
</script>

<a href="javascript:void(0)" οnclick="openBrWindowInCentre('child.html','600','400');">打开子窗口</a> 

2. 子窗口 
< script language="JavaScript" type="text/javascript"> 
< !-- 
function refreshParent() { 
window.opener.location.href = window.opener.location.href; 
if (window.opener.progressWindow) 

window.opener.progressWindow.close(); 

window.close(); 
} //--> 
< /script> 

< a href="javascript:void(0)" οnclick="refreshParent()">刷新父窗口并关闭当前窗口</a>

 55 asp.net中位数不够补0 : string a = "332";        string b = a.ToString().PadLeft(6, '0');         Response.Write(b);

 56 winform中按钮单击事件中打开网页:

  private void Web_Mes_Click(object sender, EventArgs e)
        {   
            System.Diagnostics.Process ie = new System.Diagnostics.Process();
            ie.StartInfo.FileName = "IEXPLORE.EXE";
            ie.StartInfo.Arguments = "http://localhost:8012/WebForm1.aspx";
            ie.Start();   
        }

57 asp.net后天去html控件的值:

 protected void Button1_Click(object sender, EventArgs e)
    {
        string a = Request.Form["txt1"].ToString(); // 这里txt1是控件name的值 后天只能通过name属性找html控件
        Label1.Text = a;
    }


58 取2个List<string>差集

 List<int> list1 = new List<int>() { 1, 2, 3, 4, 5 };
            List<int> list2 = new List<int>() { 1, 2, 3, 6 };
            List<int> list3 = list1.Except(list2).ToList();//4,5 
 list1 = list1.Distinct().ToList<string>();//去除重复项
      排序: List<int> list = new List<int> { 3, 5, 1, 4 };
            list = list.OrderBy(m => m).ToList();//升序
            //list = list.OrderByDescending(x => x).ToList();//降序
            foreach (var l in list)
            {
                MessageBox.Show(l.ToString());
            }





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值