You are previewing Building Websites with the ASP.NET Community Starter Kit.
O'Reilly logo
Building Websites with the ASP.NET Community Starter Kit

Book Description

A comprehensive guide to understanding, implementing, and extending the powerful and freely available application from Microsoft.

  • Learn .NET architecture through building real-world examples

  • Understand, implement, and extend the Community Starter Kit

  • Learn to create and customize your own website

  • For ASP.NET developers with a sound grasp of C#

  • In Detail

    Microsoft's ASP.NET Community Starter Kit (CSK) is a powerful, freely available application that allows you to quickly create a fully featured community-driven website, complete with article and news management, downloads, forums, and user handling. Supported and tested by thousands of developers in the ASP.NET community across the world, the Community Starter Kit offers you the luxury of a scalable and extensible architecture, and the ability to brand your own site. This book will take you inside the Community Starter Kit, allowing you to harness its power for easily creating your own websites.

    A complete and practical guide to delivering content-rich community-driven websites based on the freely available ASP.NET Community Starter Kit from Microsoft. Aimed at experienced ASP.NET developers with responsibility for delivering robust and feature-rich websites, fast and effectively. First the book gives you a clear understanding of the architecture of the application. Then, it walks you through the implementation process, outlining choices and techniques. Having mastered the standard application, youll learn how to customize and extend the framework to deliver customer features and to integrate with other applications.

    Table of Contents

    1. Building Websites with the ASP.NET Community Starter Kit
    2. Credits
    3. About the Authors
    4. Introduction
      1. What This Book Covers
      2. What You Need for Using This Book
      3. Conventions
      4. Reader Feedback
      5. Customer Support
        1. Downloading the Example Code for the Book
        2. Errata
        3. Questions
    5. 1. The ASP.NET Community Starter Kit
      1. What Can the Community Starter Kit Do for You?
      2. The License Agreement
      3. Installing the Community Starter Kit
      4. Summary
    6. 2. Touring a Community Starter Kit Website
      1. Overview of the Community Starter Kit
      2. The Main Page
        1. The Community Logo
        2. The Community Menu
        3. The Search Box
        4. Login/Register
        5. Advertising
        6. Web Boxes
        7. Web Services Boxes
        8. Voting Polls
        9. The Contents
      3. Overview of the CSK Modules
        1. Articles
        2. Events
        3. Books
        4. Links
        5. Discussions
        6. Photo Gallery
        7. Downloads
        8. Parent Section
        9. HTML Page
      4. Common Features in the CSK Modules
        1. Security
        2. Moderation
        3. Comments
        4. Ratings
        5. Notifications
        6. Quotas
        7. HTML Editor
      5. Creating and Using User Accounts
        1. Creating a New User Account
        2. Log In
        3. Edit Profile
        4. Logging in as Administrator
      6. Summary
    7. 3. Creating and Administering Community Websites
      1. Using the Community Administration Menu
        1. Edit Sections
          1. Editing a Section
            1. General
            2. Appearance
            3. Web Boxes
            4. Security
            5. Web Services
            6. Advanced
          2. Add New Section
        2. Edit Voting Polls
        3. Edit Service Subscriptions
        4. Edit Messages
        5. Edit Topics
        6. Edit Users
        7. Edit Web Box Services
        8. Send Newsletter
        9. Edit Images
        10. View Activity Log
        11. Delete Content
        12. View Documentation
        13. Administering Advertisements
        14. Administering Quotes
        15. The ISP Administration Page
          1. Creating a New Community
      2. Summary
    8. 4. Themes, Skins, and the Common Controls
      1. Meeting Themes, Skins, and Styles
        1. Playing with Visual Studio
        2. Painting the Skin with Style
        3. What are Skins Made Of?
          1. Page Skins
          2. Content Skins
          3. Control Skins
          4. Template Skins
        4. The Web Boxes
      2. Creating Themes
      3. The Community Starter Kit Custom Controls
        1. Learning about the Common Content Controls
          1. AddContent
          2. Author
          3. BriefDescription
          4. CommunityImageButton
          5. ContentList
          6. DateCreated
          7. DisplayQuota
          8. HtmlTextBox
          9. ItemAuthor
          10. ItemBriefDescription
          11. ItemDateCreated
          12. ItemEditContent
          13. ItemHasRead
          14. ItemImage
          15. ItemReadMoreLink
          16. ItemTitle
          17. ItemTitleLink
          18. ItemViewCount
          19. LengthValidator
          20. Logo
          21. PageFooter
          22. PageHeader
          23. SectionTitle
          24. Sorter
          25. Title
          26. UploadValidator
          27. ViewCount
      4. Summary
    9. 5. Customizing your Website
      1. Setting up a New Community
      2. Preparing the Folder Structure and the Page Skin
      3. Adding Information
        1. Having a New Home
        2. About Me
        3. Advertising the Books
        4. Forum
      4. Changing the Layout
        1. Updating the Parent Section and the Styles
      5. Summary
    10. 6. The Community Starter Kit Core Architecture
      1. The CSK Folder Structure and Configuration Files
        1. Configuring the CSK Project
          1. Web.Config
            1. ISP Administrator Information
            2. Default Page Information
            3. Database Connection Information
            4. Enabling Web Services Timer
            5. Enabling Debug Mode
            6. Handing Client Requests
            7. Configuring Authentication Information
            8. Setting the Maximum Request Length
            9. Handling Image File Requests
            10. Configuring Web Services
          2. Global.asax
        2. What Do the Main CSK Folders Contain?
          1. The Admin Folder
          2. The Advertisements Folder
          3. The Communities Folder
          4. The ISPAdmin Folder
          5. The Engine Folder
      2. Building Pages for the Client
        1. The Default Page
        2. Analyzing the Community Default Page
        3. Processing Client Requests
          1. Processing the Request in Application_BeginRequest
          2. Getting Page Information in GetPageInfo
          3. Authenticating the Request in Application_AuthenticateRequest
      3. Processing the Request in the Middle Tier
        1. The Community Starter Kit Framework
          1. The Framework Base Classes
            1. The CommunitiesSectionHandler Class
            2. The CommunityGlobals Class
            3. The SkinnedCommunityControl Class
            4. ContentAddPage, ContentEditPage, ContentItemPage, and ContentListPage
            5. The PageInfo Class
            6. The QuotaInfo Class
          2. Handling Communities
          3. Handling Sections
          4. Handling Images
          5. Handling Content Pages
          6. Handling Search
          7. Studying the Engine/Admin Folder
        2. Modules for the CSK
      4. The Database Structure
        1. The Tables
      5. Online CSK Resources
      6. Summary
    11. 7. Inside a CSK Module
      1. Database Layer
        1. Procedures and Functions
          1. Community_ArticlesAddArticle
          2. Community_ArticlesGetArticles
            1. Ordering Content
            2. Paging and Sorting Content
          3. Community_ArticlesGetArticle
        2. Delete Content
      2. Module Classes
        1. Components
          1. Component Helpers
          2. Get Articles
        2. Content
          1. communityDefault.aspx
          2. Article Content Control
          3. The Article Skin
          4. InitializeSkin Method
      3. Skins and Styles
      4. Summary
    12. 8. Creating a New Module
      1. Module Design
      2. Module Construction Blueprint
      3. The Community_Faq Table
      4. The Community_Faqs Stored Procedures
        1. Community_FaqsAddFaq
        2. Community_FaqsEditFaq
        3. Community_FaqsGetFaqs
        4. Community_FaqsGetFaq
      5. Initializing the FAQ Module
      6. FAQ Components
        1. FaqInfo
        2. FaqUtility
      7. FAQ WebControls
        1. FaqAnswer and FaqReference
        2. FaqEditContent
      8. Content Classes
        1. Faq and FaqSection
        2. AddFaq and EditFaq
      9. FAQ Page Content Skins
      10. Module Styles
      11. Putting It Together
      12. Summary
    13. 9. Customization with User Controls
      1. The Custom Module Section
        1. The "Recent Logins" User Control
          1. Community_RecentLogins Stored Procedure
          2. Recent Logins.ascx
          3. Recent Logins Administration
      2. Custom Web Boxes
        1. FAQ Web Boxes
        2. Current Event Web Box
      3. Summary
    14. 10. Adding an RSS Feed
      1. The RSS 2.0 Specification
      2. Community RSS Design
      3. HttpModule Changes and Configuration
      4. CommunityRSS.aspx
      5. Testing the RSS Feed
      6. Advertising the RSS Feed
      7. Summary
    15. 11. Deployment
      1. Installing Content Files
        1. Copy Project
          1. Xcopy Deployment
        2. Configuring ASP.NET
          1. ASP.NET on Windows 2000
          2. ASP.NET on Windows 2003
        3. CSK Site Configuration
      2. Database Deployment
        1. DTS Deployment
        2. Script Deployment
        3. Backup and Restore
        4. Database Ownership Problems
      3. Community Starter Kit Configuration
        1. Web.Config
        2. ISPAdmin
      4. Working with Other Sites
      5. Summary
    16. A. CSK Controls
        1. BriefDescription
        2. ContentList
        3. DateCreated
        4. DisplayQuota
        5. HtmlTextBox
        6. ItemReadMoreLink
        7. ItemTitleLink
        8. LengthValidator
        9. PageFooter
        10. SectionTitle
        11. Sorter
          1. Title
        12. UploadValidator