첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
유용한 소스 코드가 있으면 icodebroker@naver.com으로 보내주시면 감사합니다.
블로그 자료는 자유롭게 사용하세요.

728x90
반응형

■ Page 클래스 : Session 속성을 사용해 일정 시간 내 글쓰기 방지하기

------------------------------------------------------------------------------------------------------------------------


TestProject.zip


MainPage.aspx

 

 

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MainPage.aspx.cs" Inherits="TestProject.MainPage" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">

    <head runat="server">

        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

        <title>Page 클래스 : Session 속성을 사용해 일정 시간 내 글쓰기 방지하기</title>

    </head>

    <body>

        <form id="form" runat="server">

            <div>

                <asp:TextBox ID="inputTextBox" runat="server" />

                <asp:Button ID="writeButton" runat="server"

                    Text="글 쓰기"

                    OnClick="writeButton_Click" />

                <asp:Label ID="displayLabel" runat="server" />

            </div>

        </form>

    </body>

</html>

 

 

MainPage.aspx.cs

 

 

using System;

using System.Web.UI;

 

namespace TestProject

{

    /// <summary>

    /// 메인 페이지

    /// </summary>

    public partial class MainPage : Page

    {

        //////////////////////////////////////////////////////////////////////////////////////////////////// Method

        ////////////////////////////////////////////////////////////////////////////////////////// Protected

 

        #region 페이지 로드시 처리하기 - Page_Load(sender, e)

 

        /// <summary>

        /// 페이지 로드시 처리하기

        /// </summary>

        /// <param name="sender">이벤트 발생자</param>

        /// <param name="e">이벤트 인자</param>

        protected void Page_Load(object sender, EventArgs e)

        {

        }

 

        #endregion

        #region 글 쓰기 버튼 클릭시 처리하기 - writeButton_Click(sender, e)

 

        /// <summary>

        /// 글 쓰기 버튼 클릭시 처리하기

        /// </summary>

        /// <param name="sender">이벤트 발생자</param>

        /// <param name="e">이벤트 인자</param>

        protected void writeButton_Click(object sender, EventArgs e)

        {

            if(Session["WriteTime"] != null)

            {

                DateTime writeTime = Convert.ToDateTime(Session["WriteTime"]);

 

                TimeSpan timeSpan = DateTime.Now - writeTime;

 

                if(timeSpan.TotalSeconds < 5)

                {

                    this.displayLabel.Text = "잠시 대기해 주시기 바랍니다.";

 

                    return;

                }

            }

 

            Session["WriteTime"] = DateTime.Now;

 

            this.displayLabel.Text = this.inputTextBox.Text;

        }

 

        #endregion

    }

}

 

------------------------------------------------------------------------------------------------------------------------

728x90
반응형
Posted by 사용자 icodebroker
TAG , ,

댓글을 달아 주세요