国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ バックエンド開発 C#.Net チュートリアル ASP.NET で検証コードを実裝し、検証コードを更新する小さな例

ASP.NET で検証コードを実裝し、検証コードを更新する小さな例

Jan 13, 2017 pm 02:27 PM

実裝コード

/// <summary>
    /// 生成驗證碼圖片,保存session名稱VerificationCode
    /// </summary>
    public static void CreateVerificationCode()
    {
        int number;
        string checkCode = string.Empty;
        //隨機數種子
        Random randoms = new Random();
        for (int i = 0; i < 4; i++) //校驗碼長度為4
        {
            //隨機的整數
            number = randoms.Next();
            //字符從0-9,A-Z中隨機產生,對應的ASCII碼分別為
            //48-57,65-90
            number = number % 36;
            if (number < 10)
            {
                number += 48;
            }
            else
            {
                number += 55;
            }
            checkCode += ((char)number).ToString();
        }
        //在session中保存校驗碼
        System.Web.HttpContext.Current.Session["VerificationCode"] = checkCode;
        //若校驗碼為空,則直接返回
        if (checkCode == null || checkCode.Trim() == String.Empty)
        {
            return;
        }
        //根據校驗碼的長度確定輸出圖片的長度
        System.Drawing.Bitmap image = new System.Drawing.Bitmap(55, 20);//(int)Math.Ceiling(Convert.ToDouble(checkCode.Length * 15))
        //創(chuàng)建Graphics對象
        Graphics g = Graphics.FromImage(image);
        try
        {
            //生成隨機數種子
            Random random = new Random();
            //清空圖片背景色
            g.Clear(Color.White);
            //畫圖片的背景噪音線 10條
            //---------------------------------------------------
            for (int i = 0; i < 10; i++)
            {
                //噪音線起點坐標(x1,y1),終點坐標(x2,y2)
                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);
            }
            //---------------------------------------------------
            //Brush b = Brushes.Silver;
            //g.FillRectangle(b, 0, 0, image.Width, image.Height);
            //---------------------以上兩種任選其一------------------------------
            //輸出圖片中校驗碼的字體: 12號Arial,粗斜體
            Font font = new Font("Arial", 12, (FontStyle.Bold | FontStyle.Italic));
            //線性漸變畫刷
            LinearGradientBrush brush = new LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.Purple, 1.2f, true);
            g.DrawString(checkCode, font, brush, 2, 2);
            //畫圖片的前景噪音點 50個
            for (int i = 0; i < 50; 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.Peru), 0, 0, image.Width - 1, image.Height - 1);
            //創(chuàng)建內存流用于輸出圖片
            using (MemoryStream ms = new MemoryStream())
            {
                //圖片格式指定為png
                image.Save(ms, ImageFormat.Jpeg);
                //清除緩沖區(qū)流中的所有輸出
                System.Web.HttpContext.Current.Response.ClearContent();
                //輸出流的HTTP MIME類型設置為"image/Png"
                System.Web.HttpContext.Current.Response.ContentType = "image/Jpeg";
                //輸出圖片的二進制流
                System.Web.HttpContext.Current.Response.BinaryWrite(ms.ToArray());
            }
        }
        finally
        {
            //釋放Bitmap對象和Graphics對象
            g.Dispose();
            image.Dispose();
        }
    }

aspxページを作成する

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

 <%Help.CreateVerificationCode(); %>

HTMLコードと引用を追加する

 <div class="positionR">
     <label>驗證碼:</label>
     <span class="style1"> *</span>
     <input type="text" class="yanZm" runat="Server" reg="^.+$" id="txtAuthCode" tip="請輸入驗證碼!" />
     <img class="yanZm_img lazy"  src="/static/imghw/default1.png"  data-src="AuthCode.aspx"    alt="" id="imgAuthCode" />
 </div>

リフレッシュを実裝する方法

     <script type="text/javascript">
         $("#imgAuthCode").click(function () {
             $(this).attr("src", "AuthCode.aspx?code=" + (new Date()).getTime());
         });
     </script>

レンダリング

ASP.NET で検証コードを実裝し、検証コードを更新する小さな例

ASP.NETの検証コードの実裝と検証コードのリフレッシュのその他の小さな例関連記事は、PHP 中國語 Web サイトに注目してください。

このウェブサイトの聲明
この記事の內容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當する法的責任を負いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

イテレータを作成するためのC#の収量キーワードの重要性は何ですか? イテレータを作成するためのC#の収量キーワードの重要性は何ですか? Jun 19, 2025 am 12:17 AM

keieldKeywordinc#simplifisitorator creation byは、astatemachinableslazyevaluation.1.itemsonisingingingingielidreturn、eachiTemを使用することを想定しています

依存関係噴射(DI)とは何ですか?また、C#でどのように実裝できますか(たとえば、ASP.NETコアに組み込みDIを使用)? 依存関係噴射(DI)とは何ですか?また、C#でどのように実裝できますか(たとえば、ASP.NETコアに組み込みDIを使用)? Jun 30, 2025 am 02:06 AM

依存関係の関心(DI)Inc#isadesignpatternthatenhancesmodularity、testability、およびmaintainability byallowingclasseStoreceivedenciesiesiesies.1.DipromotesslooseCouplingbydeapling objectcreationfromusage.2.itsimplifestestestroughtestroughjectStrughimject

IDISPOSABLEインターフェイスの目的と、リソース管理のためのC#の使用ステートメントは何ですか? IDISPOSABLEインターフェイスの目的と、リソース管理のためのC#の使用ステートメントは何ですか? Jun 27, 2025 am 02:18 AM

IDISPOSABLEの役割とC#での使用は、管理されていないリソースを効率的かつ決定論的に管理することです。 1。Idisposableは、dispose()メソッドを提供するため、クラスは管理されていないリソースをリリースする方法を明確に定義できます。 2。使用するステートメントは、オブジェクトが範囲外であるときに廃棄()が自動的に呼び出されることを保証し、リソース管理を簡素化し、漏れを回避します。 3.それを使用する場合、オブジェクトはIdisposableを実裝し、複數のオブジェクトを宣言することができ、StreamReaderなどのタイプに常に使用する必要があることに注意してください。 4.一般的なベストプラクティスには、クリーンアップするためのデストラクタに依存せず、ネストされたオブジェクトの操作を正しく処理すること、廃棄(BOOL)パターンの実裝が含まれます。

Lambda式とLINQ(言語統(tǒng)合クエリ)は、C#のデータ操作をどのように強化しますか? Lambda式とLINQ(言語統(tǒng)合クエリ)は、C#のデータ操作をどのように強化しますか? Jun 20, 2025 am 12:16 AM

lambdaexpressionsandlinqsimplifydatamanipulationinc#byenablingconcise、readable、a??nd efficientcode.1.lambdaexpressionsalowinlinefunctiondefinitions、make seasiertopasslogicasarguments forfiltering、transforming、sorting、andgregationdatadirimationdatdatidiristlogicasuments

C#8のNULLABLEリファレンスタイプ(NRT)とは何ですか?また、それらはどのようにしてnullReferenceExceptionを防ぐのに役立ちますか? C#8のNULLABLEリファレンスタイプ(NRT)とは何ですか?また、それらはどのようにしてnullReferenceExceptionを防ぐのに役立ちますか? Jun 21, 2025 am 12:36 AM

nullablereferenceTypes(nrts)inc#8 helpcatchnullreferenceexceptionerterrorsAtcompiletimebymakingrecerenceTypesnon-nullablebydefault.nrtsmustbeenedabledede.csprojfilewithetthettopofaused futopofay.csfuie.csfuie.csfue.csprojtthedthe.

C#で開発する際に避けるべき一般的な落とし穴やパターンは何ですか? C#で開発する際に避けるべき一般的な落とし穴やパターンは何ですか? Jun 23, 2025 am 12:05 AM

C#開発における4つの一般的な「パターンアンチパターン」問題を避ける必要があります。第一に、Async/待ち望みの不合理な使用は、デッドロックまたはパフォーマンスの劣化につながります。完全な非同期性の原則を遵守し、configureawait(false)を構成し、命名を標準化する必要があります。第二に、VARへの過度の依存は読みやすさに影響し、タイプが不明な場合にチームの仕様を明示的に宣言および統(tǒng)合します。第三に、処分とリソース管理の誤った使用が漏れを引き起こし、使用ステートメントを正しく使用する必要があり、特徴的な標準モードを実裝する必要があります。第4に、靜的クラスまたはシングルトンの亂用はテストの困難を引き起こし、依存関係の注入、ステートレス性、またはコンテナによって管理されるライフサイクルを優(yōu)先する必要があります。これらの誤解を避けると、コードの品質とメンテナンスが大幅に向上する可能性があります。

C#でスパンおよびメモリを使用して、メモリの使用量を最適化し、割り當てを減らすにはどうすればよいですか? C#でスパンおよびメモリを使用して、メモリの使用量を最適化し、割り當てを減らすにはどうすればよいですか? Jun 18, 2025 am 12:11 AM

スパンとメモリは、メモリの割り當てを削減することにより、C#のパフォーマンスを改善します。 1. SPANは配列のコピーを回避し、既存のメモリへの軽い參照を提供します。これは、バイナリプロトコル、文字列操作、高性能バッファ管理に適しています。 2。メモリは、より柔軟なライフサイクルが必要なシナリオに適した非同期メソッドを通過するメモリスライスを渡すことをサポートします。 3.両方とも、GC圧力を低減し、バッファーを再利用し、一時的なコピーを回避することにより、パフォーマンスを最適化します。 4。スパンはスタックでの使用に限定されており、クラスに保存したり、非同期方法で使用したりすることはできません。 calling.toarray()などの再割り當て操作を避けるように注意してください。

C#オブジェクト指向のデザインでの堅実な原則とそれらのアプリケーションを説明できますか? C#オブジェクト指向のデザインでの堅実な原則とそれらのアプリケーションを説明できますか? Jun 25, 2025 am 12:47 AM

確固たる原則は、オブジェクト指向のプログラミングにおけるコードの保守性とスケーラビリティを改善するための5つの設計原則です。それらは次のとおりです。1。単一の責任原則(SRP)は、レポートの生成や電子メールの送信の分離など、クラスが1つの責任のみを想定することを要求しています。 2。オープニングとクロージングの原則(OCP)は、ISHAPEインターフェイスを使用して異なるグラフィックの領域計算を実現(xiàn)するなど、元のコードを変更することなく、インターフェイスまたは抽象クラスを通じて拡張機能がサポートされることを強調しています。 3.リヒター置換原理(LSP)は、サブクラスがロジックを破壊することなく親クラスを置き換えることを要求しています。 4.インターフェイス分離原理(ISP)は、冗長依存性を回避するための分割印刷やスキャン関數など、きめ細かいインターフェイスの定義を提唱しています。 5.依存関係反転原理(DIP)が提唱します

See all articles