public override void AppendForeach <TElement>(Func <IList <TElement> > func, Action <TElement> action)
        {
            ForEachCollectionInfo <TElement> info = UpgradeHelpers.Helpers.StaticContainer.Instance.Resolve <ForEachCollectionInfo <TElement> >();

            Append(func);
            Append <IList <TElement> >((collection) => { info.List = collection; });
            AppendLoop <TElement>(info, action);
        }
 private void AppendLoop <TElement>(ForEachCollectionInfo <TElement> collectionInfo, Action <TElement> bodyAction)
 {
     this.AddPromise(null, viewManager.Async(collectionInfo, bodyAction));
 }