Episerver forms - Overwriting submission data


Hello, Iam trying to overwrite input values on a submission on the formssubmitting event. This is my code:

    public class EpiserverFormsInitializationModule : IConfigurableModule
        private Injected _formRepository;
        private Injected _contentLoader;
        public void ConfigureContainer(ServiceConfigurationContext context)

        private static void ConfigureContainer(ConfigurationExpression container)

        public void Initialize(InitializationEngine context)
            FormsEvents.Instance.FormsSubmitting += Instance_FormsSubmitting;

        private void Instance_FormsSubmitting(object sender, FormsEventArgs e)
            var request = HttpContext.Current.Request;
            var pageReference = UrlResolver.Current.Route(new UrlBuilder(request.UrlReferrer)).ContentLink;
            var submission = e as FormsSubmittingEventArgs;
            IContent content = _contentLoader.Service.Get(e.FormsContent.ContentLink);
            ILocalizable localizable = content as ILocalizable;
            if (content == null || localizable == null || submission == null)
            FormIdentity formsId = new FormIdentity(e.FormsContent.ContentGuid, localizable.Language.Name);
            var friendlyNameInfos = _formRepository.Service.GetDataFriendlyNameInfos(formsId);
            var friendlyPageId = friendlyNameInfos.FirstOrDefault(x => x.FriendlyName == "PageID");
            if (friendlyPageId != null && !friendlyPageId.FriendlyName.IsNullOrWhiteSpace())
                var pageId = submission.SubmissionData.Data.FirstOrDefault(x => x.Key == friendlyPageId.ElementId);
                pageId = new KeyValuePair(pageId.Key, pageReference.ID);


        public void Uninitialize(InitializationEngine context)

This code works and replaces the value of the in this case "pageID" input field that i have in my form. When i export the submission forms from episerver edit i get a list that represents the new value correctly. But in the "Forms submissions" tab in episerver edit in a form the view is empty. 

If i remove the code that adds a new keypair value and post my form again the view is full again and the forms where i changed the "pageID" are also there with the new value. 

I need a better way to go about this because i think iam missing something, thanks!

Jul 04, 2016 11:10

Found the problem :) 

pageId = new KeyValuePair<string, object>(pageId.Key, pageReference.ID);

should have been 

pageId = new KeyValuePair<string, object>(pageId.Key, pageReference.ID.ToString());

Database was not expecting an int, its always the little things that get you..

Edited, Jul 05, 2016 10:41
This topic was created over six months ago and has been resolved. If you have a similar question, please create a new topic and refer to this one.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.