Ektron Synergy 2014 - A Case Study in Using MVC with Ektron

Preview:

DESCRIPTION

Learn why you might consider using Microsoft’s MVC framework to build your next Ektron site. Presented by Kurt Wiersma, Senior Manager, Web Development, American Academy of Neurology.

Citation preview

A  CASE  STUDY  IN  USING  MVC  WITH  EKTRON

1

Kurt  Wiersma  American  Academy  of  Neurology  kwiersma@aan.com

Who  am  I?• Developed  web  apps  for  over  11  years  • Have  used  the  MVC  pattern  with  Java,  ColdFusion  (CFML),  C#,  and  Python  

• Lead  a  team  of  3  other  devs

2

Agenda• AAN  Background  • MVC  Pros  &  Cons  • Our  Architecture  • Mobile  • Tips  and  Tricks  • Q  &  A

3

AAN  Background• We  are  a  pro  association  for  over  27,000  neurologists  across  the  world  

• Hadn't  been  completely  redesigned  since  2007  • Moved  from  CF  to  .Net  MVC  with  C#  • Moved  from  a  home  grown  CMS  to  Ektron  8.7  • Hired  C2  as  Ektron  implementation  experts

4

View  (html,  cshtml)

Controller

Model  (people,  places,  things)

View  Model

What  is  MVC?

6

7

MVC  Pros• Clean  separation  makes  enhancements  and  unit  testing  

easier  • Mobile  site  was  quick  and  easy  to  build  • Could  customize  how  the  site  works  (didn't  use  Ektron  

widgets)  • Dev  Team  was  familiar  with  it  • Excellent  Ektron  API

8

MVC  Cons• No  in-­‐place  editing  for  content  updates  • You  cannot  use  PageBuilder  • Cannot  use  pre-­‐built  Ektron  UI  widgets  • Limited  docs  and  examples

9

PageController

AliasMvcHandlerEktronAliasManager

Ektron  API

View  Model

Razor  View

EktronPageService

Mobile  Layout

Desktop  Layout

Our  Architecture

Server  Environments• Dev  -­‐  test  new  Ektron  releases  changes  to  our  MVC  app  – TeamCity  build  server  

• Staging  -­‐  updates  done  here  • Production  -­‐  2  virtual  servers  &  a  load  balancer

12

Mobile

Server  Side  User  Agent  Detection

Server  Side  User  Agent  Detection

Content  Update  UX

!http://staging.aan.com/WorkArea/edit.aspx?id=130  

Tips  &  Tricks• Getting  started  &  URL  Aliasing  • Internal  Libraries  – User  login  /  account  management  – Shared  layout

18

Resources• Ektron  MVC  Dev  Center  Article  

– https://developer.ektron.com/experts/derek-­‐barka/ektron-­‐cms-­‐asp-­‐net-­‐mvc-­‐sample/  

• Ektron  MVC  Sample  Code  

– https://developer.ektron.com/Templates/CodeLibraryDetail.aspx?id=461&blogid  

• Phone  User-­‐Agent  Detection  

– http://detectmobilebrowsers.com

19

Special  Thanks• AAN  Development  Team:  Mike  Bishop,  Nick  Weber,  and  Andrew  Leaf  

• The  C2  Group  • Ektron:  Jon  Kee,  James  Stout

20

Questions?• With  answers  (hopefully!)

21