关于Session问题
做图片验证码。会用SESSION存取随机数。可第一次Session总为空,验证码有显示 
 每次第一次Session就会为空。郁闷半天。求助了。   
 代码如下: 
 图片验证码: 
 if   (!IsPostBack)    
 {    
 		MakeValidateCode()   ; 
 }    
 void   MakeValidateCode()    
 {    
 char[]   s   =   new   char[]{ '1 ',    '2 ', '3 ', '4 ', '5 ', '6 ', '7 ', '8 ', '9 '};    
 string   num   =    " ";    
 Random   r   =   new   Random();    
 for(int   i   =   0;   i    <   5;   i++)    
 {    
 num   +=   s[r.Next(0,   s.Length)].ToString();    
 }    
 ValidateCode(num); 
 }      
 public   void   ValidateCode(string   VNum)    
 {    
 validateimage   =   new   Bitmap(70,   20,   PixelFormat.Format24bppRgb);    
 g   =   Graphics.FromImage(validateimage);    
 g.DrawString(VNum,   new   Font( "Verdana ",12),new   SolidBrush(Color.White),new   PointF(8,0));    
 g.FillRectangle(new   LinearGradientBrush(new   Point(0,0),   new   Point(110,20),   Color.FromArgb(0,0,0,0),Color.FromArgb(255,255,60,40)),0,0,120,30);    
 g.Save();    
 MemoryStream   ms=new   MemoryStream();    
 validateimage.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);    
 Response.ClearContent();    
 Response.ContentType= "image/gif ";    
 Response.BinaryWrite(ms.ToArray());    
 Session[ "VNum "]   =   VNum; 
 Response.End();    
 }      
 ///用户登陆页面   
 if   (Session[ "VNum "]   !=   null) 
 { 
 if(this.txtValidate.Text   !=   Session[ "VNum "].ToString()) 
 { 
 this.Label1.Visible   =   true; 
 this.Label1.Text   =    "验证码错误! "; 
 } 
 else 
 { 
 int   val   =   new   BLL.RegUsers().CheckLogingUser(this.userName.Text,System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(this.userPwd.Text, "md5 ")); 
 if(val   >    0   ) 
 { 
 Session[ "username "]   =   this.userName.Text; 
 Response.Redirect( "office/index.aspx "); 
 } 
 else 
 { 
 Response.Write( " <script> alert( '提示:帐号或密码错误! ');self.location.href= 'login.aspx ' </script>  "); 
 } 
 } 
 }   
 弄得没办法了。只能先在最开始加一个if   (Session[ "VNum "]   !=   null)可第一次登陆正确总会跳回登陆页面。要登陆两次才行。。。   
 好心的帅哥帅姐们。帮帮小弟。。~~~~~~~~~~~
------解决方案--------------------Response.BinaryWrite(ms.ToArray()); 它的原因