Example #1
0
        private static void CreateProvider()
        {
            lock (lockobjectCreateProvider)
            {
                ProviderList = new Dictionary <string, DiscountCodeInterface>();

                var pluginData = new PluginData(PortalSettings.Current.PortalId);
                var l          = pluginData.GetDiscountCodeProviders(false);

                foreach (var p in l)
                {
                    var          prov   = p.Value;
                    ObjectHandle handle = null;
                    handle = Activator.CreateInstance(prov.GetXmlProperty("genxml/textbox/assembly"), prov.GetXmlProperty("genxml/textbox/namespaceclass"));
                    var objProvider = (DiscountCodeInterface)handle.Unwrap();
                    var ctrlkey     = prov.GetXmlProperty("genxml/textbox/ctrl");
                    var lp          = 1;
                    while (ProviderList.ContainsKey(ctrlkey))
                    {
                        ctrlkey = ctrlkey + lp.ToString("");
                        lp     += 1;
                    }
                    objProvider.ProviderKey = ctrlkey;
                    if (!ProviderList.ContainsKey(ctrlkey))
                    {
                        ProviderList.Add(ctrlkey, objProvider);
                    }
                }
            }
        }
        // dynamically create provider
        private static void CreateProvider()
        {
            ProviderList = new Dictionary<string, DiscountCodeInterface>();

            var pluginData = new PluginData(PortalSettings.Current.PortalId);
            var l = pluginData.GetDiscountCodeProviders();

            foreach (var p in l)
            {
                    var prov = p.Value;
                    ObjectHandle handle = null;
                    handle = Activator.CreateInstance(prov.GetXmlProperty("genxml/textbox/assembly"), prov.GetXmlProperty("genxml/textbox/namespaceclass"));
                    var objProvider = (DiscountCodeInterface)handle.Unwrap();
                    var ctrlkey = prov.GetXmlProperty("genxml/textbox/ctrl");
                    var lp = 1;
                    while (ProviderList.ContainsKey(ctrlkey))
                    {
                        ctrlkey = ctrlkey + lp.ToString("");
                        lp += 1;
                    }
                    objProvider.ProviderKey = ctrlkey;
                    ProviderList.Add(ctrlkey, objProvider);
            }
        }