Random ro = new Random (5);
int a;
a = ro.Next(10000,99999);
Label1.Text = a.ToString();这是我写的一个随机数,
我怎么刷新页面 老都是一个数,
我想实现的是,刷新一次页,就变一次,或是 点一次button就变一次,怎么改?谢谢

解决方案 »

  1.   

    你在构造函数中写
    if(page.IsPostBack)
    {
    //你写的函数名()}
    这样就可以了!
      

  2.   

    计算机只能提供伪随机数的算法,它的原理是 根据“种子”产生一个结果,然后再通过一定的算法改变当前的“种子”,从而使下次产生的结果不同,达到仿随机的结果lz每次使用的“种子”都是一样的Random ro = new Random (5);//种子都是5
    所以产生的结果都是一样的
      

  3.   

    看下这个吧
    private string CreateRandomCode( int codeCount )
    {
    string allChar = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,W,X,Y,Z" ;
    string[] allCharArray = allChar.Split(',');
    string randomCode = "";
    int temp = -1; Random rand = new Random();
    for(int i = 0; i < codeCount; i++)
    {
    if(temp != -1)
    {
    rand = new Random(i*temp*((int)DateTime.Now.Ticks));
    }
    int t = rand.Next(35);
    if(temp == t)
    {
    return CreateRandomCode(codeCount);
    }
    temp = t;
    randomCode += allCharArray[t];
    }
    return randomCode;
    }
      

  4.   

    随机数的生成是从种子值开始。如果反复使用同一个种子,就会生成相同的数字系列。产生不同序列的一种方法是使种子值与时间相关,从而对于 Random 的每个新实例,都会产生不同的系列。要提高性能,请创建一个 Random,以便随着时间的推移可以生成很多随机数,而不要重复新建 Random 来生成一个随机数。
    ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/cpref/html/frlrfsystemrandomclasstopic.htm
      

  5.   

    Random ro = new Random (5);
    改成Random ro = new Random ();
      

  6.   

    Random ro = new Random ((int)DateTime.Now.Ticks);
    int a;
    a = ro.Next(10000,99999);
      

  7.   

    public void Picture(System.Web.UI.HtmlControls.HtmlImage IMG1,string CheckCode)//System.Web.UI.HtmlControls.HtmlImage IMG1
    {
    System.Drawing.Bitmap bmp=new Bitmap(160,40);
    System.Drawing.SolidBrush br=new SolidBrush(Color.FromArgb(239,239,207));
    System.Random random=new Random();
    for(int i=1;i<5000;i++)
    {
    bmp.SetPixel(random.Next(160),random.Next(40),System.Drawing.Color.FromArgb(239,239,207));
    }
    System.Drawing.Graphics grap=System.Drawing.Graphics.FromImage(bmp);
    grap.FillRectangle(br,new System.Drawing.Rectangle(0,0,160,40));
    grap.DrawString(CheckCode,new System.Drawing.Font("Arial",20),new System.Drawing.SolidBrush(System.Drawing.Color.Black),30,8);
    string fullname=System.Web.HttpContext.Current.Request.MapPath(System.Web.HttpContext.Current.Request.ApplicationPath)+"\\image\\validate.gif";
    bmp.Save(fullname,System.Drawing.Imaging.ImageFormat.Gif);
    IMG1.Src=fullname;
    grap.Dispose();
    bmp.Dispose();
    }你看看这段代码,这是我平时用的验证码图片生成的方法。
      

  8.   

    要产生比较好的效果,应该把这个伪随机数产生器保存到Session,从而始终用同一个Random,这样任何时候调用ro.next都能达到目的Random ro = null;
    private void Page_Load(......)
    {
       if(page.IsPostBack)
       {
           ro = new Random(); 
           Session["ro"] = ro;
       }
       else
       {
           ro = Session["ro"] as Random;
       }
    }
      

  9.   

    我每次都是new Random().Next(10000,99999),也不会重复