예제 #1
0
        protected BCaseModelPorter GetCaseModelPorter(string name)
        {
            BCaseModelPorter bco = default(BCaseModelPorter);

            foreach (var item in this.pCaseModelPorters)
            {
                if (item.GetType().Name == name)
                {
                    bco = item;
                    break;
                }
            }
            return(bco);
        }
예제 #2
0
        BCaseModelPorter[] AutoSerachpCaseModelPorters(params string[] ps)
        {
            BCaseModelPorter[]      cmps = default(BCaseModelPorter[]);
            List <BCaseModelPorter> ls   = new List <BCaseModelPorter>();

            foreach (var item in ps)
            {
                var v = Assembly.Load(item);
                foreach (var item2 in v.GetTypes())
                {
                    if (item2.IsSubclassOf(typeof(BCaseModelPorter)))
                    {
                        var cmp = item2.GetConstructor(new Type[] { typeof(Data) }).Invoke(new object[] { this.data }) as BCaseModelPorter;
                        cmp.eCaseCallback += this.mainWindow.CaseCallbackHandler.CaseCallbackHandler;
                        cmp.GetServer     += this.dispatch.GetServer;
                        ls.Add(cmp);
                    }
                }
            }
            cmps = new BCaseModelPorter[ls.Count];
            ls.CopyTo(cmps);
            return(cmps);
        }