반응형

 
이 포스트는 월간 마이크로소프트웨어에 기고한 원고를 재편집한 포스트입니다. 그러므로, 본의 아니게 반말로 진행되고 있습니다. 원래 싸가지가 없어서 그런 것이 아니니 무한 용서를... ^^;;
또한, .NET Framework 3.5 SP1이 적용되기 이전의 소스이므로, 현재의 개발 환경과 다를 수 있습니다. 마소에 제출한 블로그 소스는 블로그 소스 다운로드에서 다운로드하실 수있습니다.

블로그를 위한 데이터베이스의 생성 및 구성

이제부터는, 블로그에 관련된 데이터베이스 및 테이블들을 만들어보도록 하겠다. 우선 SQL Server Management Studio를 실행시킨 후, 새 데이터베이스 생성 메뉴를 통하여 “BlogDataBase"라는 새로운 데이터베이스를 만든다. 새로운 데이터베이스를 생성하였으면, 새로운 테이블들을 만들어보도록 하겠다. 우선, 관리자가 지정한 카테고리들의 목록이 저장되는 BLOG_CATEGORIES 테이블의 구성은 <표 2>와 같다.



다음으로는, 관리자가 작성한 이전 포스트의 목록을 작성일자(년-월)별로 표시하기 위한 BLOG_ARCHIVES 테이블의 구성은 <표 3>과 같다.



관리자가 지정한 즐겨찾는 사이트 및 블로그의 목록이 표시되는 BLOG_LINKS 테이블의 구성은 <표 4>와 같다.



작성한 포스트의 정보가 입력되는 BLOG_POSTS 테이블의 구성은 <표 5>와 같다.



블로그의 공지 사항을 저장하는 테이블인 BLOG_NOTICES 테이블의 구성은 <표 6>과 같다. BLOG_NOTICES 테이블의 구조는 BLOG_POSTS 테이블의 구성과 유사하다.



포스트에 대하여 사용자들이 등록하는 덧글 정보를 저장하는 BLOG_COMMENTS 테이블의 구성은 <표 7>과 같다.



포스트 작성시에 등록되는 태그들의 정보를 저장하는 BLOG_TAGS 테이블의 구성은 <표 8>과 같다.



<표 2>에서 <표 8>까지 설명한 테이블의 정보는 <화면 8>과 같다.


<화면 8> BlogDataBase에 속한 테이블들의 구성 정보

블로그 관리자 정보 페이지 구성 (About.aspx)

블로그를 관리하고 있는 관리자에 대한 정보를 사용자들이 조회하는 웹 페이지를 만들어보도록 하겠다. 특별하게 데이터베이스에서 쿼리를 하는 부분이 없는, 단순한 웹 페이지라고 할 수 있겠다. 앞에서 만든 웹 페이지 중 “About.aspx”에 <리스트 3>과 같은 코드를 추가한다.

<%@ Page Title="" Language="C#" MasterPageFile="~/BlogMasterPage.master" 
    AutoEventWireup="true" CodeFile="About.aspx.cs" Inherits="About" %>
 
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <div class="left">
        <div class="content">
            <h1>Neostyx는?</h1>
            <p><a href="http://www.neostyx.net" target="_blank">neostyx.net</a> 
            사이트를 운영하고 있는 닷넷 개발자입니다<br />
            2007년 Microsoft ASP.NET MVP로 활동중에 있으며 2008년부터 
            마이크로소프트웨어에 글을 개제하고 있습니다<br />
            앞으로도 많은 관심과 격려를 부탁드리겠습니다</p>
            <center>
                <img src="http://pds6.egloos.com/logo/200709/13/66/c0052366.png" alt="mvp 로고 />
            </center><br />
            <h1>Neostyx의 관심사</h1>
            <ul>
                <li>ASP.NET AJAX</li>
                <li>ASP.NET MVC Framework</li>
                <li>LINQ</li>
                <li>Microsoft Seminar</li>
                <li>Microsoft MVP</li>
        </ul>
        </div>
    </div>
</asp:Content>

<리스트 3> About.aspx 페이지의 소스 코드

또한 웹 브라우저의 타이틀을 변경하기 위하여, "About.aspx.cs" 코드 파일의 페이지 로드 이벤트에 다음과 같이 마스터 페이지의 타이틀을 변경하는 코드를 추가한다.

    protected void Page_Load(object sender, EventArgs e)
    {
        this.Master.Page.Title = "About Me";
    }


“About.aspx” 웹 페이지에 적용되어 있는 디자인을 보기 위하여, CTRL+F5키 또는 디버그 메뉴의 디버깅하지 않고 시작 메뉴를 선택한다. “About.aspx” 웹 페이지의 화면은 <화면 9>과 같다.


<화면 9> About.aspx의 웹 페이지 화면

이상으로, 블로그 정보를 저장하는 데이터베이스를 생성하고, 블로그를 구성하는 데에 사용되는 웹 사이트를 만들어보았다. 다음회에서는 로그인에 관련된 로직의 구성과 포스트 작성, 작성된 포스트의 목록을 조회하는 화면 등 블로그의 주요 기능들에 대한 설명을 하도록 하겠다.


Creative Commons License
저작물크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
반응형

+ Recent posts