Esempio n. 1
0
        protected override string DoProcess(dynamic args, string content)
        {
            string itemname = ComFunc.nvl(args.itemname);
            string dataname = ComFunc.nvl(args.dataname);

            if (CurrentContext.GetBindObject(dataname) == null)
            {
                return("");
            }
            if (!(CurrentContext.GetBindObject(dataname) is IEnumerable <object>))
            {
                return("");
            }
            var data  = (IEnumerable <object>)CurrentContext.GetBindObject(dataname);
            var rtn   = new StringBuilder();
            var index = 0;

            foreach (dynamic item in data)
            {
                var newitemname = $"{itemname}_{index}";
                rtn.AppendLine(content.Replace($"#v({itemname}", $"#v({newitemname}"));
                CurrentContext.AddBindObject(newitemname, item);
                index++;
            }
            return(rtn.ToString());
        }