public InvokeSummery Invoke(string boardingNamespace, string boardingClass, string boardingMethod, object instanceObject, params object[] parameters)
        {
            if (m_compilerResults.Errors.HasErrors)
            {
                return(new InvokeSummery {
                    IsSuccessfull = false
                });
            }

            var _bordingNamespaceClass = boardingNamespace + "." + boardingClass;

            var _modules = m_compilerResults?.CompiledAssembly.GetModules();

            var _module    = _modules.FirstOrDefault(p => p.GetType(_bordingNamespaceClass) != null);
            var _classType = _module?.GetType(_bordingNamespaceClass);

            if (_classType == null)
            {
                Messages = new ComileAtRuntimeInfo[]
                {
                    new RuntimeError($"'{_bordingNamespaceClass}' not found in code!", true)
                };
                return(new InvokeSummery {
                    IsSuccessfull = false
                });
            }

            var _method = _classType.GetMethod(boardingMethod);

            if (_method == null)
            {
                Messages = new ComileAtRuntimeInfo[]
                {
                    new RuntimeError($"'{boardingMethod}' not found in {_bordingNamespaceClass}!", true)
                };
                return(new InvokeSummery {
                    IsSuccessfull = false
                });
            }

            var _returnObject = _method.Invoke(instanceObject, parameters);

            return(new InvokeSummery
            {
                IsSuccessfull = true,
                Result = _returnObject,
                Parameter = parameters
            });
        }
        public bool CompileFromFile(params string[] fileNames)
        {
            Messages = new ComileAtRuntimeInfo[0];

            m_compilerResults = m_provider?.CompileAssemblyFromFile(m_compilerParameters, fileNames);

            if (m_compilerResults == null)
            {
                Messages = new ComileAtRuntimeInfo[]
                {
                    new RuntimeError("No compiler result!", true)
                };
                return(false);
            }

            Messages =
                m_compilerResults.Errors.Cast <System.CodeDom.Compiler.CompilerError>()
                .Select(p => new CompilerError(p) as ComileAtRuntimeInfo)
                .ToArray();

            return(!m_compilerResults.Errors.HasErrors);
        }