Communicate via SCORMâ„¢ with Your LMS


The Problem:

The Sharable Content Object Reference Model (SCORMâ„¢) standard for communication between content objects and a Learning Management System (LMS) dictates that communication be via JavaScript. This can conflict with training content that is dynamically created on the server using ASP.NET. For example, you might have a nice "data-bound" quiz that is scored on the server when the user clicks the "Score" button. Passing this data to an LMS via SCORM requires multiple calls of the LMSSetValue() method via JavaScript. How do we do this from server-side code?

The Solution:

The LmsApi object comes to the rescue! The developer calls methods of the LmsApi object in server-side code (Visual Basic, C#, etc.) in order to generate the correct JavaScript. The developer then uses the built-in RegisterClientScriptBlock() method or sets the text of a Literal control to dynamically insert this JavaScript into the web page.

The Uses:

Any content created in ASP.NET that needs to communicate via SCORM 1.2 or 1.3/2004 with an LMS will find the LmsApi object unbelievably helpful. The object supports the entirety of the SCORM "Run-Time Environment" model and provides the ability to work with the data both on the client (JavaScript) or the server (VB, C#, etc.) Dissect the sample projects and then try it for yourself!



View online help

Download Demo or Evaluation Copy


User Comments

  • The book has been an excellent read! I'm halfway through it and I have already changed one of my kiosk apps to use visual inheritance. It's a great book. I'm look forward to finishing and applying it.
  • I want to stress again how much I'm enjoying your book. Here's why: I've bought a ton of .Net books over the last two years. First I did ASP.Net work, and now I'm moving into WinForms. Most of the books look at .Net from a feature point of view--they cover all basics, presenting the CLR, controls, data access, error handling, deployment, etc. But they provide little, if any, real-world information about taking all these features and creating an application. Your book, on the other hand, takes the opposite approach (as you know!), and provides a quick look at the .Net architecture, but then moves straight into developing an app., teaching more about .Net along the way. I wish there were more books like this!
  • You did a great job of distilling VS.NET and VB.NET in less than 100 pages.
  • You have a great, relaxed writing style.
  • I've a rapidly expanding library on this new stuff, and locating stuff inside it is compellingly frustrating! My worst experience so far has been establishing how to use system-wide variables which persist across a multi-form application. Of all the books on the shelf, the only one that hit that meaningfully was Jeff's "VBTrain.Net". Thanks Jeff!
View all comments