2013년 10월 31일 목요일

[ASP.NET, .NET웹강좌]닷넷쿠키사용예제(ASP.NET Cookie)


[ASP.NET, .NET웹강좌]닷넷쿠키사용예제(ASP.NET Cookie)
 
ASP.Net에서 쿠키를 생성하고, 읽고, 삭제하는 예제 입니다.
잘 활용하시기 바랍니다.
 
감사합니다.
 
<%@ Page Language="C#"  %>
<script runat="server">
    public void Button1_Click(object sender, EventArgs e)
    {
        HttpCookie name = new HttpCookie("name");
        HttpCookie url = new HttpCookie("url");
        HttpCookie lastVisit = new HttpCookie("last");
        HttpCookie visitCount = new HttpCookie("visitCount");
        DateTime now = DateTime.Now;
        name.Value = "오엔제이,오라클자바커뮤니티";
        url.Value = "www.onjprogramming.co.kr";
        lastVisit.Value = now.ToString();
        visitCount.Value = "1";
        Response.Cookies.Add(name);
        Response.Cookies.Add(url);
        Response.Cookies.Add(lastVisit);
        Response.Cookies.Add(visitCount);
        Response.Write("Cookie Setting OK~");
    }
    public void Button2_Click(object sender, EventArgs e)
    {
      
        if (Request.Cookies.Count > 0)
        {
            if (Request.Cookies["name"] != null)
            {
                label1.Text += "<br>name 쿠키 : " + Request.Cookies["name"].Value + "<br>";
            }
            if (Request.Cookies["url"] != null)
            {
                label1.Text += "url 쿠키 : " + Request.Cookies["url"].Value + "<br>";
            }
            if (Request.Cookies["last"] != null)
            {
                label1.Text += "last 쿠키 : " + Request.Cookies["last"].Value + "<br><br>";
            }
            int vCount = 0;
            if (Request.Cookies["visitCount"] != null)
            {
                vCount = Convert.ToInt32(Request.Cookies["visitCount"].Value);
                vCount++;
            }
           
            HttpCookie visitCount = new HttpCookie("visitCount");
            visitCount.Value = vCount.ToString();
            Response.Cookies.Add(visitCount);
            foreach (String str in Request.Cookies.AllKeys)
            {
                label1.Text += str + ":" + Request.Cookies[str].Value + "<br>";
            }
        }
    }
    public void Button3_Click(object sender, EventArgs e)
    {
        foreach (String str in Request.Cookies.AllKeys)
        {
            Response.Cookies[str].Expires = DateTime.Now.AddDays(-1);
        }
        label1.Text = "쿠키 삭제 OK~";
    }
   
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <asp:Button ID="button1" onClick="Button1_Click" runat="server" Text="Cookie Setting" />
    <asp:Button ID="button2" onClick="Button2_Click" runat="server" Text="Get Cookies" />
    <asp:Button ID="button3" onClick="Button3_Click" runat="server" Text="Delete Cookies" />
    <asp:Label ID="label1" runat="server" Text="" />
    </form>
</body>
</html>


 



C#,ASP.NET마스터 8일 56시간   11-06
C#,ASP.NET마스터 18일 54시간   11-01
ASP.NET4.0 MVC 프로그래밍 11일 33시간   11-04
ASP.NET4.0 MVC 프로그래밍 4일 32시간   11-09
C#,ASP.NET마스터 8일 56시간   11-09


[닷넷 C# 메뉴]C# Form에 MenuItem 및 Context 추가 예제(C# MENU, MDI 만들기)

[닷넷 C#  메뉴]C# Form에 MenuItem 및 Context 추가 예제(C# MENU, MDI 만들기)



Form에 MenuItem 및 Context 추가 예제

1. Visual Studio .Net을 실행하여 C#, 윈도우 응용 프로그램을 실행 한 후 프로젝트 제목을 menuandcontext라고 주자…
2. 폼이 나타나면 아래 화면 처럼 메뉴를 만들어 보자.

 
그림, 폼 만들기 Form1.cs[d25-1]



다음은 MDI.cs(MDI 폼) 하나 만들자. 만든 후 Form의 속성에서 isMdiContainer를 true로 하자. File 메뉴와 Window 메뉴는 아래 처럼 만들자. 특히 Window 메뉴의 Open Windows 메뉴는  MdiList 속성을 true로 해야 한다.(그래야 Open MDI 자식 창들의 목록을 볼 수 있다)

 

[그림, 메뉴만들기, d25-2]
 

마지막으로 MDI 폼안에 들어갈 임의의 폼을 하나 만들자.(MDI_In.cs)


[그림, MDI안의 폼만들기, d25-3]

3. 다음과 같이 소스 코딩을 하자.
……………

private int btnCount=1;
private void add_Click(object sender, System.EventArgs e)
{
//MessageBox.Show("y");
Button button1 = new Button();
btnCount++;
button1.Location = new System.Drawing.Point(10, 20*btnCount);
button1.Name = "button" + btnCount;
button1.Size = new System.Drawing.Size(50, 20);
button1.Text = "추가버튼"+btnCount;
Controls.Add(button1);
}

private void delete_Click(object sender, System.EventArgs e)
{
}

private void Form1_Load(object sender, System.EventArgs e)
{
//---- 마우스 오른쪽 버튼 클릭시 동작하게 하기 위해
ContextMenu contextMenu = new ContextMenu();

MenuItem add = new MenuItem("추가");
MenuItem delete = new MenuItem("삭제");
add.Click += new EventHandler(add_Click);
delete.Click += new EventHandler(delete_Click);

contextMenu.MenuItems.Add(add);
contextMenu.MenuItems.Add(delete);

button1.ContextMenu = contextMenu;
}

private void menuItem5_Click(object sender, System.EventArgs e)
{
Application.Exit();
}

//Red Click
private void menuItem2_Click(object sender, System.EventArgs e)
{
Graphics g = CreateGraphics();
g.Clear(System.Drawing.Color.Red);
g.Dispose();
}

//Blue
private void menuItem3_Click(object sender, System.EventArgs e)
{
Graphics g = CreateGraphics();
g.Clear(System.Drawing.Color.Blue);
g.Dispose();
}

다음은 MDI.cs 파일의 폼로드 이벤트 부분이다.

private void MDI_Load(object sender, System.EventArgs e)
{
MDI_in mdi = new MDI_in();
mdi.MdiParent = this;
mdi.Show();

}

//MDI Form에서 Close시 현재 활성 화된자식 윈도우를 닫는다.
private void menuItem3_Click(object sender, System.EventArgs e)
{
MDI_in child = (MDI_in)this.ActiveMdiChild;
if (child != null) 
{
child.Close();
}
}

//New Click
private void menuItem2_Click(object sender, System.EventArgs e)
{
MDI_in mdi = new MDI_in();
mdi.MdiParent = this;
mdi.Show();
}

//Window 메뉴의 Tile 클릭시
private void menuItemTile_Click(object sender, System.EventArgs e)
{
this.LayoutMdi(MdiLayout.TileHorizontal);
}

//Window 메뉴의 Cascade 클릭시
private void menuItem8_Click(object sender, System.EventArgs e)
{
this.LayoutMdi(MdiLayout.Cascade);
}
다음은 MDI_In.cs파일은 만들기만 하면 되며 본 예제에서는 별도의 코드가 없다.

4. 실행결과
 



 













 





C#,ASP.NET마스터 8일 56시간   11-06
C#,ASP.NET마스터 18일 54시간   11-01
ASP.NET4.0 MVC 프로그래밍 11일 33시간   11-04
ASP.NET4.0 MVC 프로그래밍 4일 32시간   11-09
C#,ASP.NET마스터 8일 56시간   11-09