Download presentation
Presentation is loading. Please wait.
1
Adxstudio Portals Training
Portal Structure and Developer Best Practices
2
Portal Structure All of the starter portals share a single code base, the Master Portal web project Differences between portals are driven solely by data in the CRM, which lights up different features from the code base Best suggestion for starting out is to take one of the starter portals and configure and customize it to suit your needs
3
Common Components Master Pages Page Templates Partial Views
User Controls Inherited by all page templates. Most use ASP.NET web forms, but MVC (formless) master pages used as well .aspx pages used as Templates by Portal applications. Can use ASP.NET web forms and/or MVC Can be inserted into a page template or MVC view. Used for the default header and footer User controls providing specific functionality used by portal applications
4
Default.master Default.master is the Default master page and is an MVC master page All Page templates should inherit from this Does all the Plumbing and contains boiler plate code. This is where the Front-side editing and Webfile-based styling all kick in Includes Header and Footer, but there is never a need to modify the Default.master because header and footer can be changed using site settings or Liquid Templates
5
WebForms.master WebForms.master simply adds a form, to make it suitable for ASP.NET Web Forms page templates:
6
WebFormsContent.master
WebFormsContent.master adds a side bar Containing Ad, Poll, and Rating functionality as well as navigation Other master pages can be used as well
7
ASP.NET Web Forms Page Templates
Page Templates are used by the portals to determine layout Page FullPage ProfileChildPage Hard-coded ASP.NET Page templates for Web Pages are included in the ~/Pages folder Listing Others
8
Liquid Templates When a Web Page uses Liquid Template, the Physical .aspx page that is used is the WebTemplate.aspx page, which simply renders the Liquid Web Template specified by the page
9
Rendering Partial Views
Can use Html.RenderPartialFromSetting to render a partial view based on a site setting. Allows different configuration options for templating out- of-the-box
10
Partial Views Breadcrumbs Footer Header Pagination SignInLink
11
Site Header and Footer Several Options for the Header and the Footer are available using partial views (based on site settings). Liquid can also be used to set the Site Header and Footer Header: Header/Template “HeaderNavbar”: Default header with primary navigation below site title and log in “HeaderCopy”: Header with an additional content block and the default controls placed together on top “HeaderTabs”: The Primary Navigation rendered as tabs Footer: Footer/Template “FooterMenuWithCopy”: Default footer with supplementary nav links and a content block “FooterMenu”: Links only “FooterCopy”: Content block only
12
User Controls Can be edited/modified/copied and changed to suit your needs Included with Master portal: Breadcrumbs.ascx ChildNavigation.ascx MultiRatingControl Uses Rating.ascx and Vote.ascx Comments Uses CommentCreator.ascx
13
Individual features are contained within the “Areas” folder
Common Components Each of the Adxstudio Features is isolated within it’s own MVC area This Includes Events, Forums, Blogs, Ideas, Commerce, and many more Although these are MVC areas, many do not use an MVC structure Promotes Code Isolation Individual features are contained within the “Areas” folder
14
Adding features Turning on one of our OOB features is as simple as adding the relevant data in the CRM Ex. Adding Forums to the Government Portal Documentation on community portal No Code changes required
15
Custom Development It’s unlikely every bit of functionality you want is going to come out of the box Now it’s time for custom development Best practice is not to touch any portal code or markup outside of the “Areas” folder unless absolutely necessary This will make for easy upgrades during future releases of Adxstudio Anything you modify becomes “frozen in time” as it were
16
Custom Development So how do you add custom code? Make an Area!
Anything can be put into an area, including master pages, code helpers, and configuration file transforms Segment your project into “features” Isolate functionality and put the functionality into Areas
17
Setting up your Portal Choose an out of the box portal that most closely matches what you will need Add Out-of-the-Box features to it from our feature catalog Roll a custom theme, add logos and skins Add custom content Develop custom layouts and page templates as needed Identify the gaps in functionality Develop new features as Areas
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.