Skip to Content

ASP.NET 4 Social Networking Table of Contents


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: Forums
Chapter 10: Groups
Chapter 11: User Interactivity
Chapter 12: Moderation
Chapter 13: Scaling
Appendix: Comparing ASP.NET MVP with ASP.NET MVC
Index

  • Chapter 1: Social Networking
    • What makes this topic so important
      • Communities Galore
    • Once I have my own social network, then what?
      • Customer service
      • Content moderation
      • Growing infrastructure requirements
      • POST and SLATES
    • Our social network—Fisharoo
    • This book's approach
      • Problem
      • Design
      • Solution
    • Features of our social network
      • Accounts
      • Profiles
      • Friends
      • Messaging
      • Media galleries
      • Blogging
      • Forums
      • Groups
      • Comments
      • Tags
      • Ratings
      • Mark as Answer
      • Voting
      • Medals
      • Framework
      • Scaling up
    • Summary
    • Chapter 2: An Enterprise Approach to our Community Framework
      • Application design
        • Key principles
        • Layered architecture
          • Layers
        • Tiered architecture
      • Domain-driven Design
        • Important aspects
          • Ubiquitous language
          • Entities
          • Value objects
          • Services
          • Modules
          • Aggregates
          • Factories
          • Repositories
      • Entity Framework
      • Repository pattern and Entity Framework
      • Building Extensibility using Managed Extensibility Framework (MEF)
      • Model View Presenter pattern
        • Model
        • View
        • Presenter
        • How it works
      • Creating the .NET Solution
        • Presentation layer
        • Components layer
          • Configuration
          • Cache
          • Session
          • Redirection
          • Email
          • Error handling and logging
        • Data Access layer
      • Summary
      • Chapter 3: User Accounts
        • Problem
        • Design
          • Registration
            • Accounts
            • Password strength
            • Terms and conditions
            • reCAPTCHA
            • 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
            • Update Model from Database
            • A Data Context wrapper
            • Building repositories
            • The other repositories
          • Implementing the application layer
            • Extension methods
          • Implementing the 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
            • Revisiting the Solution Structure
          • Implementing the database
            • The Profiles table
            • Level of experience
            • The Attributes table
            • The Privacy table
            • The Alerts table
          • Setting up the data access layer
            • Entity classes
            • Building repositories
          • Implementing the services/application layer
            • ProfileService
            • Account service
            • Privacy service
            • Alert service
            • Other services
          • Implementing the presentation layer
            • Privacy
            • Manage profile
            • Avatar
            • Public profile
            • News feed/Alerts
        • 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
              • 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
                • 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 Blogs
                      • Fancy URL support
                      • View post
                      • Create or edit post
                  • Summary
                  • Chapter 9: Forums
                    • 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
                        • URL routing
                        • ViewForum.aspx
                        • ViewPost.aspx
                        • Post.aspx
                    • Summary
                    • Chapter 10: Groups
                      • Problem
                      • Design
                        • Groups
                        • GroupMembers
                        • GroupTypes
                        • GroupForums
                      • 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
                          • URL routing
                          • ViewGroup
                          • MyGroups
                          • Forum enhancements
                      • Summary
                      • Design
                        • Ratings
                        • Tags
                        • Comments
                        • Voting
                        • Medals
                      • Solution
                        • Implementing the database
                          • SystemObjects
                          • Ratings
                          • System object rating options
                          • Tags
                          • System object tags
                          • Comments
                          • Votes and Mark as Answer
                          • Medals
                          • Creating the relationships
                        • Setting up the data access layer
                          • Building repositories
                          • RatingRepository
                          • SystemObjectRatingOptionRepository
                          • TagsRepository
                          • SystemObjectTagRepository
                          • CommentRepository
                          • BoardPost Repository
                        • Implementing the services/application layer
                          • TagService
                          • Extensions
                          • AccountService
                          • WebContext
                          • Configuration
                        • Implementing the presentation layer
                          • Comments Page
                          • Ratings Page
                          • Tags Page
                          • Votes page
                          • MarkAnswer page
                          • Medals page
                          • Installing the new user controls
                          • Tags page
                      • Summary
                        • Chapter 12: Moderation
                          • Problem
                            • Community moderation
                            • Gagging users
                            • Dynamic filter
                            • 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
                            • Implementing the presentation layer
                              • Moderation
                              • Gagging
                              • Filtering
                          • Summary
                          • Chapter 13: Scaling
                            • Problem
                            • Design
                            • Solution
                              • Tiered architecture
                                • Scaling with two-tiered approach
                                • Scaling with multi-tiered approach
                              • Presentation and application tier scaling
                                • Layered architecture validation
                                • Service enabling business logic
                              • Web farming
                              • Caching
                                • Caching—AppFabric solution
                                • Caching—MemCached solution
                                • Configuration
                                • Where do I start?
                              • Email
                                • Creating services to send email
                                • The database
                                • Services
                                • Serializing email
                                • Connecting the new DBMailQueueService
                                • The queue
                                • Processing the queue
                              • Alerts
                              • Database tier scaling
                                • Flagged for delete
                                • Indexing
                                • Partitioning
                                • Gotchas
                              • Searching
                                • Getting Lucene.NET
                                • Building indexes
                                • Building the search
                            • Summary
                            • Appendix: Comparing ASP.NET MVP with ASP.NET MVC
                              • ASP.NET Web Forms
                                • Web presentation patterns
                                  • Page cache
                                  • Page controller
                                  • Model view presenter
                                  • Model view controller
                                  • Front controller
                                  • Intercepting filter
                              • ASP.NET MVC
                              • Choosing between MVP and MVC
                              • Summary

                              Book backreference: 
                              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
                              Open Source Content Management Customer Relationship Management e-Commerce e-Learning Java Linux Servers Networking & Telephony PHP Web Graphics & Video Web Development
                              Enterprise BPEL Microsoft Oracle SOA Web Services
                              Other Packt Books .Net Web Graphics & Video Beginner Guides Cookbooks