<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      asp.net MVC 在Controller控制器中實現驗證碼輸出

         asp.net mvc項目使用到驗證碼,為了讓以前的WebForm代碼能利用上代碼經過稍微的改動即可使用代碼如下:

      using System;
      using System.Collections.Generic;
      using System.Web;
      using System.Web.Mvc;
      using System.Web.UI;
      using System.Web.UI.WebControls;
      using System.Drawing;
      
      namespace Angel.Web.Controllers
      {
          public class CheckCodeController : Controller
          {
              //
              // GET: /CheckCode/
      
              public ActionResult Index()
              {
                  this.CreateCheckCodeImage(GenerateCheckCode());
                  return View();
              }
      
              private string GenerateCheckCode()
              {
                  int number;
                  char code;
                  string checkCode = String.Empty;
      
                  System.Random random = new Random();
                  for (int i = 0; i < 5; i++)
                  {
                      number = random.Next();
      
                      if (number % 2 == 0)
                          code = (char)('0' + (char)(number % 10));
                      else
                          code = (char)('A' + (char)(number % 26));
      
                      if (code == '0' || code == 'o' || code == 'L' || code == 'I')
                      {
                          i = i - 1;
                      }
                      else
                      {
                          checkCode += code.ToString();
                      }
                  }
      
                  //	Response.Cookies.Add(new HttpCookie("CheckCode", checkCode));
                  Session.Contents["checkcode"] = checkCode;
      
                  return checkCode;
              }
      
              private void CreateCheckCodeImage(string checkCode)
              {
                  if (checkCode == null || checkCode.Trim() == String.Empty)
                      return;
      
                  System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 12.5)), 22);
                  Graphics g = Graphics.FromImage(image);
      
                  try
                  {
                      //生成隨機生成器
                      Random random = new Random();
      
                      //清空圖片背景色
                      g.Clear(Color.White);
      
                      //畫圖片的背景噪音線
                      for (int i = 0; i < 25; i++)
                      {
                          int x1 = random.Next(image.Width);
                          int x2 = random.Next(image.Width);
                          int y1 = random.Next(image.Height);
                          int y2 = random.Next(image.Height);
      
                          g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2);
                      }
      
                      Font font = new System.Drawing.Font("Arial", 12, (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic));
                      System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2f, true);
                      g.DrawString(checkCode, font, brush, 2, 2);
      
                      //畫圖片的前景噪音點
                      for (int i = 0; i < 100; i++)
                      {
                          int x = random.Next(image.Width);
                          int y = random.Next(image.Height);
      
                          image.SetPixel(x, y, Color.FromArgb(random.Next()));
                      }
      
                      //畫圖片的邊框線
                      g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);
      
                      System.IO.MemoryStream ms = new System.IO.MemoryStream();
                      image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
                      Response.ClearContent();
                      Response.ContentType = "image/Gif";
                      Response.BinaryWrite(ms.ToArray());
                  }
                  finally
                  {
                      g.Dispose();
                      image.Dispose();
                  }
              }
      
          }
      }
      

        最后別忘了session的獲取設置,需要在Global.asax.cs文件中新增如下代碼:

              /// <summary>
              /// MVC為了獲取session參數
              /// </summary>
              public override void Init()
              {
                  PostAuthenticateRequest += (s, e) => HttpContext.Current.SetSessionStateBehavior(SessionStateBehavior.Required);
                  base.Init();
              }
      
              void MvcApplication_PostAuthenticateRequest(object sender, EventArgs e)
              {
                  HttpContext.Current.SetSessionStateBehavior(SessionStateBehavior.Required);
              }
      

       

       

      html頁面代碼:

      Views 
      html代碼
      <img name="img1" id="img1" style="position:absolute;top:5px;right:36px!important;z-index:1000;" alt="單擊圖片刷新驗證碼" src="CheckCode/Index" 
      onclick="JavaSccript:reloadImage('CheckCode/Index');" />
      <script type="text/javascript">

      function reloadImage(url) {
      document.getElementById("img1").src = url + '?abc=' + Math.random();
      }

         </script>

        

       

      posted @ 2019-12-02 16:35  Angelasp  閱讀(815)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产熟女精品一区二区三区| 亚洲男人电影天堂无码| 中文字幕精品无码一区二区三区| 亚洲av永久无码天堂影院| 牛牛视频一区二区三区| 亚洲国产精品成人av网| 高清偷拍一区二区三区| 野外做受三级视频| 午夜在线欧美蜜桃| 国产精品国产主播在线观看| 成人一区二区三区在线午夜| 无码熟妇αⅴ人妻又粗又大| 国产精品成| 国产乱弄免费视频观看| 伊人久久大香线蕉av色婷婷色| 丰满岳妇乱一区二区三区| 欧洲精品亚洲精品日韩专区| 国产精品中文字幕视频| 成人国产片视频在线观看| 免费人成在线视频无码| 人人人澡人人肉久久精品| 激,情四虎欧美视频图片| 日本污视频在线观看| 欧美牲交a欧美牲交aⅴ免费| 国产成人午夜福利在线播放| 满洲里市| 思思热在线视频精品| 三级网站视频在在线播放| 海盐县| 久久久久香蕉国产线看观看伊| 精品无码久久久久久尤物| 苍井空一区二区波多野结衣av| 亚洲欧洲色图片网站| 国产精品久久久久久影视 | 中文字幕日韩有码国产| 开心五月婷婷综合网站| 亚洲欧洲日产国码久在线| 极品无码国模国产在线观看| 熟妇好大好深好满好爽| 中文字幕亚洲精品第一页| 国产精品高清国产三级囯产AV|