ASP.NET 3.5 Social Networking Table of Contents

Back to BOOK PAGE

Table of Contents

Preface
Chapter 1: Social Networking
Chapter 2: An Enterprise Approach to our Community Framework
Chapter 3: User Accounts
Chapter 4: User Profiles
Chapter 5: Friends
Chapter 6: Messaging
Chapter 7: Media Galleries
Chapter 8: Blogs
Chapter 9: Message Boards
Chapter 10: Groups
Chapter 11: Comments, Tags, and Ratings
Chapter 12: Moderation
Chapter 13: Scaling Up
Index

  • Chapter 1: Social Networking
    • What makes this topic so important
      • Large communities
      • Niche communities
    • Once I have my own social network, then what?
      • Customer service
      • Content moderation
      • Growing infrastructure requirements
    • Our social network—Fisharoo
    • This book's approach
      • Problem
      • Design
      • Solution
    • Features of our social network
      • Accounts
      • Profiles
      • Friends
      • Messaging
      • Media galleries
      • Blogging
      • Message boards
      • Groups
      • Comments
      • Tags
      • Ratings
      • Framework
      • Scaling up
    • Summary
  • Chapter 2: An Enterprise Approach to our Community Framework
    • A layered architecture versus a non-layered architecture
      • Layers
    • Domain-driven Design
      • Ubiquitous language
      • Entities
      • Value objects
      • Services
      • Modules
      • Aggregates
      • Factories
      • Repositories
    • Model View Presenter pattern
      • Model
      • View
      • Presenter
      • How it works
    • Factory pattern using StructureMap
    • Repository pattern and LINQ
    • Wrappers for everything!
      • Configuration
      • Cache
      • Session
      • Redirection
      • Email
    • Error handling and logging
      • Error handling
      • Logging
    • Summary
  • Chapter 3: User Accounts
    • Problem
    • Design
      • Registration
        • Accounts
        • Password strength
        • Terms and conditions
        • CAPTCHA
        • Email confirmation and verification
      • Security
        • Permissions
        • Password encryption/decryption
      • Logging in
        • Password reminder
        • Manage account
    • Solution
      • Implementing the database
        • The Accounts table
        • The Permissions table
        • The AccountPermissions table
        • The Terms table
        • Creating the relationships
      • Implementing the data access layer
        • Setting up LINQ for the first time
        • A DataContext wrapper
        • Building repositories
        • The other repositories
      • Implementing the services/application layer
        • Extension methods
      • Implementing the business/domain layer
      • Implementing the presentation layer
        • Model view presenter
        • Registration page
        • Email verification
        • Password recovery
        • Edit account
        • Implementing security
    • Summary
  • Chapter 4: User Profiles
    • Problem
    • Design
      • Profile
        • Manage profile
      • Avatar
        • Custom avatars
        • Gravatar
      • Public profile
        • Custom homepage
      • Privacy
      • News feed
    • Solution
      • Implementing the database
        • The Profiles table
        • Level of Experience
        • The Attributes table
        • The Privacy table
        • The Alerts table
        • Creating the relationships
      • Setting up the data access layer
        • Building repositories
      • Implementing the services/application layer
        • ProfileService
        • Account service
        • Privacy service
        • Alert service
        • Profile Attribute Service
      • Implementing the presentation layer
        • Privacy
        • Manage profile
        • Avatar
        • Public profile
        • News feed
    • Summary
  • Chapter 5: Friends
    • Problem
    • Design
      • Friends
      • Finding Friends
        • Searching for a Friend
        • Inviting a Friend
        • Importing Friends from External Sources
        • Sending an Invitation
        • Adding Friend Alerts to The Filter
      • Interacting With Your Friends
        • Viewing Your Friends
        • Managing your friends
        • Following Your Friends
        • Providing Status Updates to Your Friends
    • Solution
      • Implementing the Database
        • The Friends Table
        • Friend Invitations
        • Status Updates
        • Creating the Relationships
      • Setting Up the Data Access Layer
        • Building Repositories
      • Implementing the Services/Application Layer
        • FriendService
        • AlertService
        • PrivacyService
      • Implementing the Presentation Layer
        • Searching for Friends
        • Invite Your Friends
        • Outlook CSV Importer
        • Confirm Friendship
        • Show Friends
        • Friends on Profile
        • Status Updates
    • Summary
  • Chapter 6: Messaging
    • Problem
    • Design
      • Messages
      • Recipients
    • Solution
      • Implementing the database
        • Messages
        • MessageRecipients
        • Creating the relationships
      • Setting up the data access layer
        • Building repositories
      • Implementing the services/application layer
        • MessageService
        • Email
        • AlertService
        • FriendService
      • Implementing the presentation layer
        • New message
        • Default (or Inbox)
        • Read message
    • Summary
  • Chapter 7: Media Galleries
    • Problem
    • Design
      • Files
      • Folders
      • File upload
      • File system management
      • Data management screens
    • Solution
      • Implementing the database
        • Files
        • File system folders
        • File types
        • Folders
        • Folder types
        • Account folders
        • Account files
        • Folder files
        • Creating the relationships
      • Setting up the data access layer
        • Building repositories
      • Implementing the services/application layer
        • FolderService
      • Implementing the presentation layer
        • File upload
        • Photo albums
    • Summary
  • Chapter 8: Blogs
    • Problem
    • Design
      • Blogs
    • Solution
      • Implementing the database
        • Blogs
        • Creating the relationships
      • Setting up the data access layer
        • Building repositories
      • Implementing the services/application layer
        • AlertService
      • Implementing the presentation layer
        • Latest blog posts
        • My blog posts
        • Fancy URL support
        • View post
        • Create or edit post
    • Summary
  • Chapter 9: Message Boards
    • Problem
    • Design
    • Categories
      • Forums
      • Threads and Posts
      • Friendly URLs
      • Alerts
    • Solution
      • Implementing the Database
        • Categories
        • Forums
        • Posts
        • Creating the Relationships
      • Setting Up the Data Access Layer
        • Building Repositories
      • Implementing the Services/Application layer
        • BoardService
        • AlertService
      • Implementing the Presentation Layer
        • Default.aspx
        • Redirector
        • UrlRewrite
        • ViewForum.aspx
        • ViewPost.aspx
        • Post.aspx
    • Summary
  • Chapter 10: Groups
    • Problem
    • Design
      • Groups
      • GroupMembers
      • GroupTypes
      • GroupForums
      • Schema
    • Solution
      • Implementing the database
        • Groups
        • GroupMembers
        • GroupTypes
        • GroupForums
        • Creating the relationships
      • Setting up the data access layer
        • Building repositories
        • GroupRepository
        • GroupToGroupTypeRepository
        • GroupForumRepository
        • GroupMemberRepository
        • GroupTypeRepository
        • AccountRepository
        • GetAccountsToApproveByGroupID
      • Implementing the services/application layer
        • GroupService
        • AlertService
        • Redirector
        • WebContext
      • Implementing the presentation layer
        • ManageGroup
        • Members
        • Default
        • UrlRewrite
        • ViewGroup
        • MyGroups
        • Forum enhancements
    • Summary
  • Chapter 11: Comments, Tags, and Ratings
    • Problem
      • Ratings
      • Tagging
      • Commenting
    • Design
      • Ratings
      • Tags
      • Comments
    • Solution
      • Implementing the database
        • SystemObjects
        • Ratings
        • System object rating options
        • Tags
        • System object tags
        • Comments
        • Creating the relationships
      • Setting up the data access layer
        • Building repositories
        • RatingRepository
        • SystemObjectRatingOptionRepository
        • TagRepository
        • SystemObjectTagRepository
        • CommentRepository
      • Implementing the services/application layer
        • TagService
        • Extensions
        • WebContext
        • Configuration
      • Implementing the presentation layer
        • Comments Page
        • Ratings Page
        • Tags Page
        • Installing the new user controls
        • UrlRewrite.cs
        • Tags page
    • Summary
  • Chapter 12: Moderation
    • Problem
      • Community moderation
      • Gagging users
      • Dynamic filter
        • Cross-site scripting (XSS)
    • Design
      • Moderation
      • Gags
      • Filtering
    • Solution
      • Implementing the database
        • Moderations
        • Gags
        • ContentFilters
        • Creating the relationships
      • Setting up the data access layer
        • Building repositories
      • Implementing the services/application layer
        • ContentFilterService
        • Extensions
      • Implementing the presentation layer
        • Moderation
        • Gagging
        • Filtering
    • Summary
  • Chapter 13: Scaling Up
    • Problem
    • Design
      • Database optimization
        • Flagged for delete
        • Indexing
        • Partitioning
      • Web farming
      • Caching
      • Searching
      • Email
    • Solution
      • Database optimization
        • Indexing
        • Partitioning
        • Gotchas
      • Web farming
      • Caching
        • The server
        • The client
        • Using the client
        • Starting the cache layer
        • Where do I start?
      • Searching
        • Getting Lucene.NET
        • Building indexes
        • Building the search
      • Email
        • Creating services to send email
        • The database
        • Services
        • Serializing email
        • Connecting the new DBMailQueueService
        • The queue
        • Processing the queue
    • Summary

Back to BOOK PAGE

Awards Voting Nominations Previous Winners
Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Resources
Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
Sort A-Z