HomeDev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunityDoc feedbackLog In
GitHubNuGetDev CommunityDoc feedback

Load resources

Shows how to load additional resources after form rendering with IViewModeExternalResources.



Optimizely Forms is only supported by MVC-based websites and HTML5-compliant browsers.

You can load additional resources after form rendering with IViewModeExternalResources. Implement the IViewModeExternalResources interface to return a list of resources (JavaScript or CSS files) that are loaded into ViewMode along with EPiServerForms.js.

The interface is used mostly for the following:

  • Third-party validators.
  • Rich element types (with rich, complex user interface that needs JavaScript to render UI and handle interaction), such as DateTimeElement in the Forms.Samples project.
using EPiServer.Forms.Core;
using EPiServer.ServiceLocation;
using System;
using System.Collections.Generic;

namespace EPiServer.Templates.Alloy.FormsExtended
    /// <summary>
    /// This example will force Forms.Core to load a JS and a CSS file (at http://example.com/Customized/ViewMode/Alloy.css) along with Form rendering
    /// </summary>
    [ServiceConfiguration(ServiceType = typeof(IViewModeExternalResources))]
    public class ExampleViewModeExternalResources : IViewModeExternalResources
        public IEnumerable<Tuple<string, string>> Resources
                var arrRes = new List<Tuple<string, string>>();
                arrRes.Add(new Tuple<string, string>("script", "/Customized/ViewMode/Example.js"));
                arrRes.Add(new Tuple<string, string>("css", "/Customized/ViewMode/Example.css"));   // This will not work in nonJS mode
                return arrRes;