我先来.
JS验证码
ValidateCode1.aspx为验证码页面
<img src="ValidateCode1.aspx" onclick ="show(this)" /></td>  调用
下面是JS文件
<script type="text/javascript">
    function show(im) 
    { 
        im.src="ValidateCode1.aspx?"+new Date;
     }
    </script>

解决方案 »

  1.   

    Insus.NET的全在这里了:
    http://insus.cnblogs.com/
    http://blog.csdn.net/insus
    http://insus.download.csdn.net/
      

  2.   

    说个快捷键
    不管光标在哪个位置都可以ctrl+回车  上一行shift+ctrl+回车  下一行
      

  3.   

    /// 去除HTML标记
            public static string NoHTML(string Htmlstring)
            {
                Htmlstring = Regex.Replace(Htmlstring, @"<script[^>]*?>.*?</script>", "", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"<(.[^>]*)>", "", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"([\r\n])[\s]+", "", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"-->", "", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"<!--.*", "", RegexOptions.IgnoreCase);            Htmlstring = Regex.Replace(Htmlstring, @"&(quot|#34);", "\"", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"&(amp|#38);", "&", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"&(lt|#60);", "<", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"&(gt|#62);", ">", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"&(nbsp|#160);", " ", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"&(iexcl|#161);", "\xa1", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"&(cent|#162);", "\xa2", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"&(pound|#163);", "\xa3", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"&(copy|#169);", "\xa9", RegexOptions.IgnoreCase);
                Htmlstring = Regex.Replace(Htmlstring, @"&#(\d+);", "", RegexOptions.IgnoreCase);            Htmlstring.Replace("<", "");
                Htmlstring.Replace(">", "");
                Htmlstring.Replace("\r\n", "");
                Htmlstring = HttpContext.Current.Server.HtmlEncode(Htmlstring).Trim();            return Htmlstring;
            }
     /// 获取应用程序路径
            public static string GetAppPath(int type)
            {
                string retValue = "";
                if (type == 1)
                {
                    retValue=HttpContext.Current.Request.ServerVariables["APPL_PHYSICAL_PATH"];
                }
                else
                {
                    string str = HttpContext.Current.Request.ServerVariables["path_translated"];
                    retValue = str.Substring(0,str.LastIndexOf("\\")+1);
                }
                return retValue;
            }
    http://www.cnblogs.com/itfuture/archive/2006/10/28/543033.html
    http://www.cnblogs.com/wppt/archive/2006/12/14/591853.aspx
    http://www.cnblogs.com/beyondnet/archive/2007/11/30/978508.html
      

  4.   

    推荐一个自己的所有总结:http://www.qeqoo.com/dev/donet/index.html
      

  5.   

    .NET常用技巧
    ==
    不会的问题google 
      

  6.   

    .net中C#代码与javaScript函数的相互调用问题。  问:  1.如何在JavaScript访问C#函数?  2.如何在JavaScript访问C#变量?  3.如何在C#中访问JavaScript的已有变量?  4.如何在C#中访问JavaScript函数?  问题1答案如下:  javaScript函数中执行C#代码中的函数:  方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;  2、在前台写一个js函数,内容为document.getElementById("btn1").click();  3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;  方法二:1、函数声明为public  后台代码(把public改成protected也可以)public string ss()   {   return("a");   }  2、在html里用可以调用  前台脚本<script language=javascript>    var a = "<%=ss()%>";    alert(a);  </script>  方法三:1、 、<script language="javascript">    <!--    function __doPostBack(eventTarget, eventArgument)    {    var theForm = document.Form1; //指runat=server的form    theForm.__EVENTTARGET.value = eventTarget;    theFrom.__EVENTARGUMENT.value = eventArgument;    theForm.submit();    }    -->    </script>    <input id="Button1" type="button" name="Button1" value="按钮" onclick="javascript:__doPostBack('Button1','')">  方法四: <script language="javascript">    function SubmitKeyClick()    {    if (event.keyCode == 13)    {    event.cancelBubble = true;    event.returnValue = false;    document.all.FunName.value="你要调用的函数名";    document.form[0].submit();    }    }    </script>    <INPUT onkeypress="SubmitKeyClick()" id="aaa" type="text">    <input type="hidden" name="FunName"> 〈!--用来存储你要调用的函数 --〉  在.CS里有:public Page_OnLoad()   {   if (!Page.IsPost())   {   string strFunName=Request.Form["FunName"]!=null?Request.Form["FunName"]:"";   //根据传回来的值决定调用哪个函数           switch(strFunName)   {   case "enter()":   enter() ; //调用该函数   break;   case "其他":   //调用其他函数   break;   default:   //调用默认函数   break;   }   }   }   public void enter()   {   //……比如计算某值   }  问题2.如何在JavaScript访问C#变量?  答案如下:  方法一:1、通过页面上隐藏域访问<input id="xx" type="hidden" runat="server">   方法二:1、如后台定义了PUBLIC STRING N; 前台js中引用该变量的格式为''或"++"  方法三:1、或者你可以在服务器端变量赋值后在页面注册一段脚本"<script language='javascript'>var temp=" + tmp + "</script>"   tmp是后台变量,然后js中可以直接访问temp获得值。  问题3.如何在C#中访问JavaScript的已有变量?  答案如下:  方法一:1、前台使用静态文本控件隐藏域,将js变量值写入其中;2、后台用request["id"]来获取值;  方法二:可以用cookie或session  问题4.如何在C#中访问JavaScript函数?  答案如下:  c#代码中执行javaScript函数:  方法一:1、Page.RegisterStartupScript("ggg"," ");  方法二:使用Literal类,然后private void Button2_Click(object sender, System.EventArgs e)   {   string str;   str=" ";   //Literal1.Visible=true;   Literal1.Text=str;   }
      

  7.   

    因为图片是另一台服务器,是linux,用的是tomcat服务器,web服务器当然是IIS6了,现在要做防盗链,就是防止人家直接输入图片服务器的地址或者直接引用!我应该在我的IIS服务器上做手脚,还是要LUNUX服务器上做手脚呢! 刚开始想的是在linux上,可是linux不大会,没有很在行的linux服务器管理员!请问这个应该怎么做,如果是在.net程序里做,应该怎么做呢! 我用过网上的用HttpHandler来处理的类,然后在web.config里配置Httphandler,再在IIS里做扩展名映射,可是好像不起作用,不知道是不是我的方法不对,望知道的大大们帮帮忙,分不够可以再加!
    ---------------------------------
    在用户访问页面时,写个临时cookie给它。请求图片时,有cookie就给,没有cookie就不显示。用IHttpModule来做吧。
      

  8.   

    在类中调用页面:
    Page page=HttpContext.Current.Handler as Page; 
    if(page==null) 
      throw new NullPageException();  //或者任何其他Exception .......  //接下来使用page就可以了。
    当然,这个类中要写个参数 page...
      

  9.   

    请教一个读取HTML中所有中文汉字的正则表达式
    ------------------
    for   example:                         string   str   =   "abc我def爱sdf老婆123 "; 
                            MatchCollection   matchs   =   Regex.Matches(str,   @ "[\u4e00-\u9fa5]+ "); 
                            foreach   (Match     m   in   matchs) 
                            { 
                                    Console.WriteLine(m.Value); 
                            } 
      

  10.   

    请教一个读取HTML中所有中文汉字的正则表达式
    ------------------
    for   example:                         string   str   =   "abc我def爱sdf老婆123 "; 
                            MatchCollection   matchs   =   Regex.Matches(str,   @ "[\u4e00-\u9fa5]+ "); 
                            foreach   (Match     m   in   matchs) 
                            { 
                                    Console.WriteLine(m.Value); 
                            } 
      

  11.   

    JS获取动态创建控件的值的问题?
    根据数据库数据 动态创建的TEXTBOX控件 不确定有多少个 我想用JS获取里面的值来计算合计 应该怎么做呢 有什么解决办法?
    ---------------------------
    var o = document.getElementsByTagName("INPUT"); 
    var sum = 0; 
    for(var i=0; i <o.length; i++){ 
      if(o.type == "text"){ 
        sum += parseFloat(o.value); 
      } 

    alert(sum); 大概是这样吧,根据楼主的具体情况而定,比如特定的控件ID等。
    --------------------------------
    ID应该是不确定的吧 除了动态创建的textbox还有其他的呢 楼上的方法应该也不行吧
    ---------------------------------
    方法一:
    var o = document.getElementsByTagName("INPUT");  
    var sum = 0;  
    for(var i=0; i  <o.length; i++){  
      if(/^TextBox1_\d*$/ig.test(o[0].id)){  
        sum += parseFloat(o[0].value);  
      }  
    }  
    alert(sum);
    方法二:
    只要你服务器端知道动态生成的textbox的个数,而且这些动态生成的textbox都有一定的规律性比如textbox0,textbox1等,你用 <input type=hidden id="hCount"/>隐藏域保存textbox的个数, 
    则客户端可以这样 
    var count = parseInt(document.getElementById("hCount").value); 
    for(int i=0;i <count;i++) 

        var textbox = document.getElementById("textbox" + i).value; 
    }
      

  12.   

    guid生成静态页地址:
    生成静态页,地址是//u//+DateTime.Now.ToString("yyyyMMdd/hh/") + Guid.NewGuid().ToString() + ".html"
      

  13.   

     DataReader新的执行方法现在command对象支持更多的执行方法了,除了旧的ExecuteNonQuery, ExecuteReader, ExecuteScaler和 ExecuteXmlReader方法,还加了新的执行方法,它们是:ExecutePageReader, ExecuteResultSet和 ExecuteRow。
      

  14.   

    /// <summary> 
            /// 生成缩略图 
            /// </summary> 
            /// <param name="originalImagePath">源图路径(物理路径)</param> 
            /// <param name="thumbnailPath">缩略图路径(物理路径)</param> 
            /// <param name="width">缩略图宽度</param> 
            /// <param name="height">缩略图高度</param> 
            /// <param name="mode">生成缩略图的方式</param> 
            public static void ImageMagickConvert(string originalImagePath, string thumbnailPath, int width, int height, string mode)
            {
                Image originalImage = Image.FromFile(originalImagePath);            int towidth = width;
                int toheight = height;            int x = 0;
                int y = 0;
                int ow = originalImage.Width;
                int oh = originalImage.Height;            switch (mode)
                {
                    case "HW"://指定高宽缩放(可能变形)                 
                        break;
                    case "W"://指定宽,高按比例                     
                        toheight = originalImage.Height * width / originalImage.Width;
                        break;
                    case "H"://指定高,宽按比例 
                        towidth = originalImage.Width * height / originalImage.Height;
                        break;
                    case "Cut"://指定高宽裁减(不变形)                 
                        if ((double)originalImage.Width / (double)originalImage.Height > (double)towidth / (double)toheight)
                        {
                            oh = originalImage.Height;
                            ow = originalImage.Height * towidth / toheight;
                            y = 0;
                            x = (originalImage.Width - ow) / 2;
                        }
                        else
                        {
                            ow = originalImage.Width;
                            oh = originalImage.Width * height / towidth;
                            x = 0;
                            y = (originalImage.Height - oh) / 2;
                        }
                        break;
                    default:
                        break;
                }            //新建一个bmp图片 
                Image bitmap = new System.Drawing.Bitmap(towidth, toheight);            //新建一个画板 
                Graphics g = System.Drawing.Graphics.FromImage(bitmap);            //设置高质量插值法 
                g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;            //设置高质量,低速度呈现平滑程度 
                g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;            //清空画布并以透明背景色填充 
                g.Clear(Color.Transparent);            //在指定位置并且按指定大小绘制原图片的指定部分 
                g.DrawImage(originalImage, new Rectangle(0, 0, towidth, toheight),
                    new Rectangle(x, y, ow, oh),
                    GraphicsUnit.Pixel);            try
                {
                    //以jpg格式保存缩略图 
                    bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Jpeg);
                }
                catch (System.Exception e)
                {
                    throw e;
                }
                finally
                {
                    originalImage.Dispose();
                    bitmap.Dispose();
                    g.Dispose();
                }
            }
      

  15.   

    /// <summary> 
            /// 生成缩略图 
            /// </summary> 
            /// <param name="originalImagePath">源图路径(物理路径)</param> 
            /// <param name="thumbnailPath">缩略图路径(物理路径)</param> 
            /// <param name="width">缩略图宽度</param> 
            /// <param name="height">缩略图高度</param> 
            /// <param name="mode">生成缩略图的方式</param> 
            public static void ImageMagickConvert(string originalImagePath, string thumbnailPath, int width, int height, string mode)
            {
                Image originalImage = Image.FromFile(originalImagePath);            int towidth = width;
                int toheight = height;            int x = 0;
                int y = 0;
                int ow = originalImage.Width;
                int oh = originalImage.Height;            switch (mode)
                {
                    case "HW"://指定高宽缩放(可能变形)                 
                        break;
                    case "W"://指定宽,高按比例                     
                        toheight = originalImage.Height * width / originalImage.Width;
                        break;
                    case "H"://指定高,宽按比例 
                        towidth = originalImage.Width * height / originalImage.Height;
                        break;
                    case "Cut"://指定高宽裁减(不变形)                 
                        if ((double)originalImage.Width / (double)originalImage.Height > (double)towidth / (double)toheight)
                        {
                            oh = originalImage.Height;
                            ow = originalImage.Height * towidth / toheight;
                            y = 0;
                            x = (originalImage.Width - ow) / 2;
                        }
                        else
                        {
                            ow = originalImage.Width;
                            oh = originalImage.Width * height / towidth;
                            x = 0;
                            y = (originalImage.Height - oh) / 2;
                        }
                        break;
                    default:
                        break;
                }            //新建一个bmp图片 
                Image bitmap = new System.Drawing.Bitmap(towidth, toheight);            //新建一个画板 
                Graphics g = System.Drawing.Graphics.FromImage(bitmap);            //设置高质量插值法 
                g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;            //设置高质量,低速度呈现平滑程度 
                g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;            //清空画布并以透明背景色填充 
                g.Clear(Color.Transparent);            //在指定位置并且按指定大小绘制原图片的指定部分 
                g.DrawImage(originalImage, new Rectangle(0, 0, towidth, toheight),
                    new Rectangle(x, y, ow, oh),
                    GraphicsUnit.Pixel);            try
                {
                    //以jpg格式保存缩略图 
                    bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Jpeg);
                }
                catch (System.Exception e)
                {
                    throw e;
                }
                finally
                {
                    originalImage.Dispose();
                    bitmap.Dispose();
                    g.Dispose();
                }
            }
      

  16.   


    <a target=_blank href='#'>  
    <img src='../Download/<%# Eval("FalseFileName").ToString() %>' 
    onerror="this.src='../images/defaultimage.gif'" 
    width="186" height="123" border="0" /></a>onerror 当加载图片由于某种原因不能显示的时候出现的默认图片。
      

  17.   


    //js中判断后台的变量
       function div_load()
        {
            if("<%=TypeID%>"=="1")
                {
                   val1.style.display="block";
                   val2.style.display="block";
                }
    }
      

  18.   

    //当生成36位随机字符串后如何去掉"-"string RandNum = Guid.NewGuid().ToString("N");
    /// <summary>
    /// 按字符串实际长度截取定长字符窜
    /// </summary>
    /// <param name="str">原字符串</param>
    /// <param name="length">要截取的长度</param>
    /// <returns>string型字符串</returns>
    public string CutString(string str, int length)
    {
    string delsqace = str.Trim();
        int i = 0, j = 0;
        foreach (char chr in delsqace)
            {
               if ((int)chr > 127)
                 {
                   i += 2;
                 }
               else
                 {
                   i++;
                 }
               if (i > length)
                 {
                   delsqace = delsqace.Substring(0, j) + "...";
                   break;
                 }
                 j++;
            }
        return delsqace;
    }
      

  19.   

    嗯,我有一个class作为我所有asp.net页面的父类: 
    C# codeusing System;
    using System.IO;
    using System.Web.UI;public class XVPage : Page
    {
        static private DirectoryInfo _Dir;    private DirectoryInfo Dir
        {
            get
            {
                if (_Dir == null)
                {
                    _Dir = new DirectoryInfo(Path.Combine(DomainBase.Extention.BaseDirPath, "App_Data"));
                    if (!_Dir.Exists)
                        _Dir.Create();
                    _Dir = new DirectoryInfo(Path.Combine(_Dir.FullName, "ViewState"));
                    if (!_Dir.Exists)
                        _Dir.Create();
                }
                return _Dir;
            }
        }    protected override object LoadPageStateFromPersistenceMedium()
        {
            PageStatePersister ps = this.PageStatePersister;
            ps.Load();
            if (ps.ControlState != null)
                ps.ControlState = 反序列化对象((string)ps.ControlState);
            if (ps.ViewState != null)
                ps.ViewState = 反序列化对象((string)ps.ViewState);
            return new Pair(ps.ControlState, ps.ViewState);
        }    protected override void SavePageStateToPersistenceMedium(object state)
        {
            PageStatePersister ps = this.PageStatePersister;
            if (state is Pair)
            {
                Pair pair = (Pair)state;
                ps.ControlState = pair.First;
                ps.ViewState = pair.Second;
            }
            else
            {
                ps.ViewState = state;
            }
            if (ps.ControlState != null)
                ps.ControlState = 序列化对象(ps.ControlState);
            if (ps.ViewState != null)
                ps.ViewState = 序列化对象(ps.ViewState);
            ps.Save();
        }    private object 反序列化对象(string stateID)
        {
            string stateStr = (string)Cache[stateID];
            string file = Path.Combine(Dir.FullName, stateID);
            if (stateStr == null)
                stateStr = File.ReadAllText(file);
            else
                Cache.Remove(stateID);
            return new ObjectStateFormatter().Deserialize(stateStr);
        }    private string 序列化对象(object obj)
        {
            string value = new ObjectStateFormatter().Serialize(obj);
            string stateID = (DateTime.Now.Ticks + (long)value.GetHashCode()).ToString(); //产生离散的id号码   
            File.WriteAllText(Path.Combine(Dir.FullName, stateID), value);
            Cache.Insert(stateID, value);
            return stateID;
        }    protected override void OnUnload(EventArgs e)
        {
            base.OnUnload(e);
            DateTime dt = DateTime.Now.AddMinutes(-20);
            foreach (FileInfo fl in Dir.GetFiles())
                if (fl.LastAccessTime < dt)
                    try
                    {
                        fl.Delete();
                    }
                    catch
                    {
                    }
        }
    }
    这样,ViewState保存在服务器端的磁盘上,不用在客户端和服务器端之间来回丢巨大的ViewState数据(仅仅剩下一个很短的字符串)。尤其是,在UpdatePanel中ViewState就显得很巨大了,非常值得把这个作为页面类型的父类使用。不论是什么“Session、Application丢失”之类的现象是否发生,不论是否关闭并重新启动了web服务器,ViewState都保持着不会丢失。 
    唉,我能回答你的问题呢? 使用这个类,那么你的页面中仅仅有一个简单的编号(你可以从客户端打开“html源代码”查看),而没有原来的ViewState了,但是功能一点不减。
      

  20.   

    前台调试脚本,在需要调试的地方加入debugger
      

  21.   


            //将时间格式化:
            string aa = DateTime.Now.ToString("yyyy年MM月dd日");
            //取当前年月日时分秒 
            DateTime currentTime = System.DateTime.Now;
            //取当前年 
            int 年 = DateTime.Now.Year;
            //取当前月 
            int 月 = DateTime.Now.Month;
            //取当前日 
            int 日 = DateTime.Now.Day;
            //取当前时 
            int 时 = DateTime.Now.Hour;
            //取当前分 
            int 分 = DateTime.Now.Minute;
            //取当前秒 
            int 秒 = DateTime.Now.Second;
            //取当前毫秒 
            int 毫秒 = DateTime.Now.Millisecond;
      

  22.   

    我的都放http://www.svnhost.cn/
      

  23.   

    在CAD当中添加自定义数据
    代码太长就不粘了
    http://www.9n1m.cn/2009/03/cad.html
      

  24.   

    是不是好东西都在BLOG里了
    我去看看去
      

  25.   

    总结都在博客里,有空你可以去看看有很多
    http://blog.csdn.net/hhxxcj
      

  26.   

    可参考不错的书
    http://download.csdn.net/source/1098370