moving a commercial asp.net application to silverlight jeffrey m. rhodes platte canyon multimedia...

18
Moving a Commercial ASP.NET Application to Silverlight Jeffrey M. Rhodes Platte Canyon Multimedia Software Corporation

Post on 20-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Moving a Commercial ASP.NET Application to Silverlight

Jeffrey M. Rhodes

Platte Canyon Multimedia Software Corporation

Product Objectives

Provide the power of ASP.NET but with no programming or advanced configuration

Store questions and objectives in SQL Server, Access, or XML

Create exams composed of questions pulled randomly by objective from a pool

Create exams that support the SCORM 1.2/2004 Runtime Environment and packaging specification (can’t do the latter currently)

Make it easy for Subject Matter Experts to edit questions

Version 2 Demo

QuestionWeb Player

Graphical Button

What are the Problems?

Requires ASP.NET virtual directoryPrevents complete SCORM compliancy

Has limited question types (multiple choice, true-false, fill-in-the-blank) due to databinding approach

Has frequent postbacks that are frustrating to users with slow connections

Difficult for users to customize

Why Silverlight?

Easy to play media and display graphics

Has power to perform more complex actions like drag & drop and drawing lines

Does not require a virtual directory

Allows reuse of much existing “Question” object functionality

Considered implementing in Flash using existing Flash “Learning Interactions” but these are limited to ActionScript version 2

Security model more conducive to web services than Flash

Version 3 DemoPage.xaml

matching_lines.xaml

Edit Resources/Templates in Expression Blend

Deployment and .xap

Content rather than resources so can add to the .xap programmatically without rebuilding DLL

Key Programming Tasks

Navigate between questionsDave Relyea’s Transition Control

Display graphic

Play mediaSimilar to graphic but don’t need to create object

Key Programming Tasks

Configure buttons with graphics and textSet Content to be a new StackPanel

Key Programming Tasks

Time questionsImplement at QuestionTemplate level

Key Programming Tasks

Communicate with an LMS via JavaScriptWindow.Invoke() for calling JavaScript function

Window.Eval() for injecting complete JavaScript calls

Key Programming Tasks

“Server-side” tasks: email, save resultsWCF web service

Create “Rollover” ButtonCustom component implemented with VisualStateManager

Key Programming Tasks

Feedback/Challenges

Feedback: extremely positive so far with customers like Exxon/Mobile and Motorola eagerly waiting for release

Challenge: creating new templates eased with Blend but still challenging for non-programmer due to necessity to work with “code-behind” file and build DLL

Harder than opening Flash .fla and saving as a new name

Challenge: dependent on corporate acceptance of Silverlight

Rest of the Puzzle

Dave Relyea’s Transition Control: http://tinyurl.com/57bwh4

Delay’s HtmlTextBlock: http://tinyurl.com/d8m23s

Sample Exam: http://www.examengine.net/ExamEngine3

Mike & Mike’s Silverlight Demos (Beta 2): http://www.miketaulty.com/SLVideos.html

Tim Heuer’s Blog: http://timheuer.com/blog

Scott Guthrie’s Blog: http://weblogs.asp.net/Scottgu

Shawn Burke’s Blog: http://blogs.msdn.com/sburke

References

Questions?

Jeffrey M. RhodesPlatte Canyon Multimedia Software

Corporation

[email protected]