/// <summary>
        /// get an Assembly according to wsdl path.
        /// </summary>
        /// <param name="wsdl">wsdl path</param>
        /// <param name="nameSpace">namespace</param>
        /// <returns>return Assembly</returns>
        public static Assembly GetWebServiceAssembly(string wsdl, string nameSpace)
        {
            try
            {
                System.Net.WebClient webClient = new System.Net.WebClient();
                System.IO.Stream webStream = webClient.OpenRead(wsdl);

                ServiceDescription serviceDescription = ServiceDescription.Read(webStream);
                ServiceDescriptionImporter serviceDescroptImporter = new ServiceDescriptionImporter();

                serviceDescroptImporter.AddServiceDescription(serviceDescription, "", "");
                System.CodeDom.CodeNamespace codeNameSpace = new System.CodeDom.CodeNamespace(nameSpace);
                System.CodeDom.CodeCompileUnit codeCompileUnit = new System.CodeDom.CodeCompileUnit();
                codeCompileUnit.Namespaces.Add(codeNameSpace);
                serviceDescroptImporter.Import(codeNameSpace, codeCompileUnit);

                System.CodeDom.Compiler.CodeDomProvider codeDom = new Microsoft.CSharp.CSharpCodeProvider();
                System.CodeDom.Compiler.CompilerParameters codeParameters = new System.CodeDom.Compiler.CompilerParameters();
                codeParameters.GenerateExecutable = false;
                codeParameters.GenerateInMemory = true;

                codeParameters.ReferencedAssemblies.Add("System.dll");
                codeParameters.ReferencedAssemblies.Add("System.XML.dll");
                codeParameters.ReferencedAssemblies.Add("System.Web.Services.dll");
                codeParameters.ReferencedAssemblies.Add("System.Data.dll");

                System.CodeDom.Compiler.CompilerResults compilerResults = codeDom.CompileAssemblyFromDom(codeParameters, codeCompileUnit);

                return compilerResults.CompiledAssembly;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #2
0
        private int InvokeWebservice(string url, string @namespace, string classname, string methodname, object[] args)
        {
            try
            {
                System.Net.WebClient wc     = new System.Net.WebClient();
                System.IO.Stream     stream = wc.OpenRead(url);
                System.Web.Services.Description.ServiceDescription         sd  = System.Web.Services.Description.ServiceDescription.Read(stream);
                System.Web.Services.Description.ServiceDescriptionImporter sdi = new System.Web.Services.Description.ServiceDescriptionImporter();
                sdi.AddServiceDescription(sd, "", "");
                System.CodeDom.CodeNamespace   cn  = new System.CodeDom.CodeNamespace(@namespace);
                System.CodeDom.CodeCompileUnit ccu = new System.CodeDom.CodeCompileUnit();
                ccu.Namespaces.Add(cn);
                sdi.Import(cn, ccu);

                Microsoft.CSharp.CSharpCodeProvider   csc = new Microsoft.CSharp.CSharpCodeProvider();
                System.CodeDom.Compiler.ICodeCompiler icc = csc.CreateCompiler();

                System.CodeDom.Compiler.CompilerParameters cplist = new System.CodeDom.Compiler.CompilerParameters();
                cplist.GenerateExecutable = false;
                cplist.GenerateInMemory   = true;
                cplist.ReferencedAssemblies.Add("System.dll");
                cplist.ReferencedAssemblies.Add("System.XML.dll");
                cplist.ReferencedAssemblies.Add("System.Web.Services.dll");
                cplist.ReferencedAssemblies.Add("System.Data.dll");

                System.CodeDom.Compiler.CompilerResults cr = icc.CompileAssemblyFromDom(cplist, ccu);
                if (true == cr.Errors.HasErrors)
                {
                    System.Text.StringBuilder sb = new System.Text.StringBuilder();
                    foreach (System.CodeDom.Compiler.CompilerError ce in cr.Errors)
                    {
                        sb.Append(ce.ToString());
                        sb.Append(System.Environment.NewLine);
                    }
                    throw new Exception(sb.ToString());
                }
                System.Reflection.Assembly assembly = cr.CompiledAssembly;
                Type   t   = assembly.GetType(@namespace + "." + classname, true, true);
                object obj = Activator.CreateInstance(t);
                System.Reflection.MethodInfo mi = t.GetMethod(methodname);

                mi.Invoke(obj, args);
            }
            catch
            {
                return(-1);
            }

            return(1);
        }
Example #3
0
        //public void SendMail(string mailTo, string mailSubject, string content)
        //{
        //    object[] methodParams = new object[4];
        //    methodParams[0] = new object();
        //    methodParams[1] = new object();
        //    methodParams[2] = new object();
        //    methodParams[3] = new object();
        //    methodParams[0] = mailTo;
        //    methodParams[1] = true;
        //    methodParams[2] = mailSubject;
        //    methodParams[3] = content;
        //    InvokeWebservice(ConfigData.MailURL, "Achievo.MMIP.CommonWebService", "EMail", "SendByAdmin", methodParams);
        //}
        /// 根据指定的信息,调用远程WebService方法
        /// </summary>
        /// <param name="url">WebService的http形式的地址</param>
        /// <param name="namespace">欲调用的WebService的命名空间</param>
        /// <param name="classname">欲调用的WebService的类名(不包括命名空间前缀)</param>
        /// <param name="methodname">欲调用的WebService的方法名</param>
        /// <param name="args">参数列表</param>
        /// <returns>WebService的执行结果</returns>
        /// <remarks>
        /// 如果调用失败,将会抛出Exception。请调用的时候,适当截获异常。
        /// 异常信息可能会发生在两个地方:
        /// 1、动态构造WebService的时候,CompileAssembly失败。
        /// 2、WebService本身执行失败。
        /// </remarks>
        /// <example>
        /// <code>
        /// object obj = InvokeWebservice("http://localhost/GSP_WorkflowWebservice/common.asmx",
        ///                               "Genersoft.Platform.Service.Workflow",
        ///                               "Common",
        ///                               "GetToolType",
        ///                               new object[]{"1"});
        /// </code>
        /// </example>
        public object InvokeWebservice(string url, string @namespace, string classname,
                                              string methodname, object[] args)
        {
            try
            {
                System.Net.WebClient wc = new System.Net.WebClient();
                System.IO.Stream stream = wc.OpenRead(url + "?WSDL");
                System.Web.Services.Description.ServiceDescription sd = System.Web.Services.Description.ServiceDescription.Read(stream);
                System.Web.Services.Description.ServiceDescriptionImporter sdi = new System.Web.Services.Description.ServiceDescriptionImporter();
                sdi.AddServiceDescription(sd, "", "");
                System.CodeDom.CodeNamespace cn = new System.CodeDom.CodeNamespace(@namespace);
                System.CodeDom.CodeCompileUnit ccu = new System.CodeDom.CodeCompileUnit();
                ccu.Namespaces.Add(cn);

                sdi.Import(cn, ccu);
                Microsoft.CSharp.CSharpCodeProvider csc = new Microsoft.CSharp.CSharpCodeProvider();
                System.CodeDom.Compiler.ICodeCompiler icc = csc.CreateCompiler();
                System.CodeDom.Compiler.CompilerParameters cplist = new System.CodeDom.Compiler.CompilerParameters();
                cplist.GenerateExecutable = false;
                cplist.GenerateInMemory = true;

                cplist.ReferencedAssemblies.Add("System.dll");
                cplist.ReferencedAssemblies.Add("System.XML.dll");
                cplist.ReferencedAssemblies.Add("System.Web.Services.dll");
                cplist.ReferencedAssemblies.Add("System.Data.dll");
                System.CodeDom.Compiler.CompilerResults cr = icc.CompileAssemblyFromDom(cplist, ccu);

                if (true == cr.Errors.HasErrors)
                {
                    System.Text.StringBuilder sb = new System.Text.StringBuilder();
                    foreach (System.CodeDom.Compiler.CompilerError ce in cr.Errors)
                    {
                        sb.Append(ce.ToString());
                        sb.Append(System.Environment.NewLine);
                    }
                    throw new Exception(sb.ToString());
                }

                System.Reflection.Assembly assembly = cr.CompiledAssembly;
                Type t = assembly.GetType(@namespace + "." + classname, true, true);
                object obj = Activator.CreateInstance(t);
                System.Reflection.MethodInfo mi = t.GetMethod(methodname);
                return mi.Invoke(obj, args);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.InnerException.Message, new Exception(ex.InnerException.StackTrace));
            }
        }
        /// <summary>  
        /// 根据WEBSERVICE地址获取一个 Assembly  
        /// </summary>  
        /// <param name="p_Url">地址</param>  
        /// <param name="p_NameSpace">命名空间</param>  
        /// <returns>返回Assembly</returns>  
        public static Assembly GetWebServiceAssembly(string p_Url, string p_NameSpace)
        {
            try
            {
                System.Net.WebClient _WebClient = new System.Net.WebClient();

                System.IO.Stream _WebStream = _WebClient.OpenRead(p_Url);

                ServiceDescription _ServiceDescription = ServiceDescription.Read(_WebStream);

                _WebStream.Close();
                _WebClient.Dispose();
                ServiceDescriptionImporter _ServiceDescroptImporter = new ServiceDescriptionImporter();
                _ServiceDescroptImporter.AddServiceDescription(_ServiceDescription, "", "");
                System.CodeDom.CodeNamespace _CodeNameSpace = new System.CodeDom.CodeNamespace(p_NameSpace);
                System.CodeDom.CodeCompileUnit _CodeCompileUnit = new System.CodeDom.CodeCompileUnit();
                _CodeCompileUnit.Namespaces.Add(_CodeNameSpace);
                _ServiceDescroptImporter.Import(_CodeNameSpace, _CodeCompileUnit);

                System.CodeDom.Compiler.CodeDomProvider _CodeDom = new Microsoft.CSharp.CSharpCodeProvider();
                System.CodeDom.Compiler.CompilerParameters _CodeParameters = new System.CodeDom.Compiler.CompilerParameters();
                _CodeParameters.GenerateExecutable = false;
                _CodeParameters.GenerateInMemory = true;
                _CodeParameters.ReferencedAssemblies.Add("System.dll");
                _CodeParameters.ReferencedAssemblies.Add("System.XML.dll");
                _CodeParameters.ReferencedAssemblies.Add("System.Web.Services.dll");
                _CodeParameters.ReferencedAssemblies.Add("System.Data.dll");

                System.CodeDom.Compiler.CompilerResults _CompilerResults = _CodeDom.CompileAssemblyFromDom(_CodeParameters, _CodeCompileUnit);

                if (_CompilerResults.Errors.HasErrors)
                {
                    string _ErrorText = "";
                    foreach (CompilerError _Error in _CompilerResults.Errors)
                    {
                        _ErrorText += _Error.ErrorText + "/r/n";
                    }
                    throw new Exception(_ErrorText);
                }

                return _CompilerResults.CompiledAssembly;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        /// < summary> 
        /// 动态调用web服务 
        /// < /summary> 
        /// < param name="url">WSDL服务地址< /param> 
        /// < param name="classname">类名< /param> 
        /// < param name="methodname">方法名< /param> 
        /// < param name="args">参数< /param> 
        /// < returns>< /returns> 
        public static object Invoke(string url, string classname, string methodname, object[] args)
        {
            string ns = "EnterpriseServerBase.WebService.DynamicWebCalling";
            if ((classname == null) || (classname == ""))
            {
                classname = WebServiceInvoker.GetWsClassName(url);
            }
            System.Net.WebClient wc = new System.Net.WebClient();
            System.IO.Stream stream = wc.OpenRead(url + "?WSDL");
            System.Web.Services.Description.ServiceDescription sd = System.Web.Services.Description.ServiceDescription.Read(stream);
            System.Web.Services.Description.ServiceDescriptionImporter sdi = new System.Web.Services.Description.ServiceDescriptionImporter();
            sdi.AddServiceDescription(sd, "", "");
            System.CodeDom.CodeNamespace cn = new System.CodeDom.CodeNamespace(ns);
            System.CodeDom.CodeCompileUnit ccu = new System.CodeDom.CodeCompileUnit();
            ccu.Namespaces.Add(cn);
            sdi.Import(cn, ccu);

            Microsoft.CSharp.CSharpCodeProvider csc = new Microsoft.CSharp.CSharpCodeProvider();
            // System.CodeDom.Compiler.ICodeCompiler csc = .CreateCompiler();

            System.CodeDom.Compiler.CompilerParameters cplist = new System.CodeDom.Compiler.CompilerParameters();
            cplist.GenerateExecutable = false;
            cplist.GenerateInMemory = true;
            cplist.ReferencedAssemblies.Add("System.dll");
            cplist.ReferencedAssemblies.Add("System.XML.dll");
            cplist.ReferencedAssemblies.Add("System.Web.Services.dll");
            cplist.ReferencedAssemblies.Add("System.Data.dll");

            System.CodeDom.Compiler.CompilerResults cr = csc.CompileAssemblyFromDom(cplist, ccu);
            if (true == cr.Errors.HasErrors)
            {
                System.Text.StringBuilder sb = new System.Text.StringBuilder();
                foreach (System.CodeDom.Compiler.CompilerError ce in cr.Errors)
                {
                    sb.Append(ce.ToString());
                    sb.Append(System.Environment.NewLine);
                }
                throw new NHExt.Runtime.Exceptions.RuntimeException("调用WebService开始编译发生错误:" + sb.ToString());
            }
            System.Reflection.Assembly assembly = cr.CompiledAssembly;
            Type t = assembly.GetType(ns + "." + classname, true, true);
            object obj = Activator.CreateInstance(t);
            System.Reflection.MethodInfo mi = t.GetMethod(methodname);
            return mi.Invoke(obj, args);
        }
        static string TranslateJsonToCode(string filePath)
        {
            OpenApiDocument doc = ReadJson(filePath);

            Settings settings = new Settings()
            {
                ClientNamespace = "MyNS",
            };

            System.CodeDom.CodeCompileUnit codeCompileUnit = new System.CodeDom.CodeCompileUnit();
            System.CodeDom.CodeNamespace   clientNamespace = new System.CodeDom.CodeNamespace(settings.ClientNamespace);
            codeCompileUnit.Namespaces.Add(clientNamespace);//namespace added to Dom

            ComponentsToCsTypes gen = new ComponentsToCsTypes(settings, codeCompileUnit, clientNamespace);

            gen.CreateCodeDom(doc.Components);
            return(gen.WriteToText());
        }
        System.CodeDom.CodeCompileUnit GenerateCompileUnit(System.CodeDom.Compiler.CodeDomProvider provider,
                                                           System.CodeDom.Compiler.CodeGeneratorOptions options, string file, List <NSObjectTypeInfo> types)
        {
            var ccu        = new System.CodeDom.CodeCompileUnit();
            var namespaces = new Dictionary <string, System.CodeDom.CodeNamespace> ();

            foreach (var t in types)
            {
                System.CodeDom.CodeTypeDeclaration type;
                string nsName;
                System.CodeDom.CodeNamespace ns;
                t.GenerateCodeTypeDeclaration(provider, options, infoService.WrapperRoot, out type, out nsName);
                if (!namespaces.TryGetValue(nsName, out ns))
                {
                    namespaces[nsName] = ns = new System.CodeDom.CodeNamespace(nsName);
                    ccu.Namespaces.Add(ns);
                }
                ns.Types.Add(type);
            }
            return(ccu);
        }
Example #8
0
 public ServiceDescriptionImportWarnings Import(System.CodeDom.CodeNamespace codeNamespace, System.CodeDom.CodeCompileUnit codeCompileUnit)
 {
 }
Example #9
0
 // Methods
 public virtual string ImportSchemaType(string name, string namespaceName, System.Xml.Schema.XmlSchemaObject context, System.Xml.Serialization.XmlSchemas schemas, System.Xml.Serialization.XmlSchemaImporter importer, System.CodeDom.CodeCompileUnit compileUnit, System.CodeDom.CodeNamespace mainNamespace, System.Xml.Serialization.CodeGenerationOptions options, System.CodeDom.Compiler.CodeDomProvider codeProvider)
 {
 }
Example #10
0
 protected abstract void GenerateNamespaceStart(System.CodeDom.CodeNamespace e);
Example #11
0
		System.CodeDom.CodeCompileUnit GenerateCompileUnit (System.CodeDom.Compiler.CodeDomProvider provider,
			System.CodeDom.Compiler.CodeGeneratorOptions options, string file, List<NSObjectTypeInfo> types)
		{
			var ccu = new System.CodeDom.CodeCompileUnit ();
			var namespaces = new Dictionary<string, System.CodeDom.CodeNamespace> ();
			foreach (var t in types) {
				System.CodeDom.CodeTypeDeclaration type;
				string nsName;
				System.CodeDom.CodeNamespace ns;
				t.GenerateCodeTypeDeclaration (provider, options, infoService.WrapperRoot, out type, out nsName);
				if (!namespaces.TryGetValue (nsName, out ns)) {
					namespaces[nsName] = ns = new System.CodeDom.CodeNamespace (nsName);
					ccu.Namespaces.Add (ns);
				}
				ns.Types.Add (type);
			}
			return ccu;
		}
Example #12
0
        public void Execute(string path)
        {
            if (this.path != path)
            {
                if (!System.IO.Directory.Exists(path))
                {
                    textBox1.Text             = "Invalid folder! choose a valid database folder";
                    tabControl1.SelectedIndex = 1;
                    return;
                }

                this.path = path;
            }

            textBox1.Text = "";

            Sqo.SiaqodbConfigurator.EncryptedDatabase = false;

            Sqo.Siaqodb siaqodbConfig = new Sqo.Siaqodb(AppDomain.CurrentDomain.BaseDirectory + "\\config");
            Sqo.IObjectList <NamespaceItem> namespaces = siaqodbConfig.LoadAll <NamespaceItem>();
            Sqo.IObjectList <ReferenceItem> references = siaqodbConfig.LoadAll <ReferenceItem>();
            siaqodbConfig.Close();

            EncryptionSettings.SetEncryptionSettings();//set back settings

            string ifEncrypted = @" Sqo.SiaqodbConfigurator.SetLicense(@"" qU3TtvA4T4L30VSlCCGUTbooYKG1XXCnjJ+jaPPrPLaD7PdPw9HujjxmkZ467OqZ"");";

            if (EncryptionSettings.IsEncryptedChecked)
            {
                ifEncrypted += @" Sqo.SiaqodbConfigurator.EncryptedDatabase=true;
                                 Sqo.SiaqodbConfigurator.SetEncryptor(Sqo.BuildInAlgorithm." + EncryptionSettings.Algorithm + @"); 

                                ";
                if (!string.IsNullOrEmpty(EncryptionSettings.Pwd))
                {
                    ifEncrypted += @" SiaqodbConfigurator.SetEncryptionPassword(""" + EncryptionSettings.Pwd + @""");";
                }
            }
#if TRIAL
            ifEncrypted += @" SiaqodbConfigurator.SetTrialLicense(""" + TrialLicense.LicenseKey + @""");";
#endif
            string metBody = ifEncrypted + @" Siaqodb siaqodb = Sqo.Internal._bs._ofm(@""" + this.path + @""",""SiaqodbManager,SiaqodbManager2"");
			
							object list= ("                             + this.textEditor1.Text + @").ToList();
                            siaqodb.Close();
                            return list;
							 "                            ;
            var    c       = new CodeDom();
            //c.AddReference(@"System.Core.dll");
            //c.AddReference(@"siaqodb.dll");
            //c.AddReference(@"System.Windows.Forms.dll");


            foreach (ReferenceItem refi in references)
            {
                c.AddReference(refi.Item);
            }
            System.CodeDom.CodeNamespace n = c.AddNamespace("LINQQuery");
            foreach (NamespaceItem nitem in namespaces)
            {
                n.Imports(nitem.Item);
            }
            n.Imports("System.Collections.Generic")
            .Imports("System.Linq")
            .Imports("Sqo")



            .AddClass(
                c.Class("RunQuery")
                .AddMethod(c.Method("object", "FilterByLINQ", "", metBody)));

            Assembly assembly = c.Compile(WriteErrors);

            if (assembly != null)
            {
                Type       t      = assembly.GetType("LINQQuery.RunQuery");
                MethodInfo method = t.GetMethod("FilterByLINQ");

                try
                {
                    var retVal = method.Invoke(null, null);

                    IList w = ((IList)retVal);

                    this.dataGridView1.DataSource          = w;
                    this.dataGridView1.AutoGenerateColumns = true;
                    this.tabControl1.SelectedIndex         = 0;
                    //this.lblNrRows.Text = ar.Count + " rows";
                }
                catch (Exception ex)
                {
                    WriteErrors(ex.ToString());
                    this.tabControl1.SelectedIndex = 1;
                }
            }
            else
            {
                this.tabControl1.SelectedIndex = 1;
            }
        }
Example #13
0
 public XmlCodeExporter(System.CodeDom.CodeNamespace codeNamespace, System.CodeDom.CodeCompileUnit codeCompileUnit, CodeGenerationOptions options)
 {
 }
Example #14
0
 // Constructors
 public XmlCodeExporter(System.CodeDom.CodeNamespace codeNamespace)
 {
 }
Example #15
0
 protected void GenerateTypes(System.CodeDom.CodeNamespace e)
 {
     Contract.Requires(e != null);
     Contract.Requires(e.Types != null);
 }
Example #16
0
 public static string Generate(System.Data.DataSet dataSet, System.CodeDom.CodeNamespace codeNamespace, System.CodeDom.Compiler.CodeDomProvider codeProvider)
 {
 }
 public virtual new void GenerateCodeFromNamespace(System.CodeDom.CodeNamespace codeNamespace, TextWriter writer, CodeGeneratorOptions options)
 {
 }
Example #18
0
 public override void ProcessGeneratedCode(System.CodeDom.CodeCompileUnit codeCompileUnit, System.CodeDom.CodeNamespace generatedNamespace, System.CodeDom.CodeTypeDeclaration generatedClass, System.CodeDom.CodeMemberMethod executeMethod)
 {
     base.ProcessGeneratedCode(codeCompileUnit, generatedNamespace, generatedClass, executeMethod);
 }
Example #19
0
		} // end private void AddProperties(System.Windows.Forms.Control control, System.Text.StringBuilder stringBuilder)

		/// <summary>
		/// The method builds the CodeDom and returns a string with the source.
		/// </summary>
		/// <returns></returns>
		private string BuildCodeBehind()
		{
			string resultString;
			System.IO.StringWriter stringWriter;
			System.CodeDom.CodeNamespace codeUsing;
			System.CodeDom.CodeNamespace codeNamespace;
			System.CodeDom.CodeCompileUnit codeCompileUnit;
			System.CodeDom.CodeTypeDeclaration codeTypeDeclaration;
			System.CodeDom.Compiler.CodeDomProvider codeDomProvider = null;
			System.CodeDom.Compiler.CodeGeneratorOptions codeGeneratorOptions;
			// Initialize Header with namespace and using declarations
			codeCompileUnit = new System.CodeDom.CodeCompileUnit();
			codeUsing = new System.CodeDom.CodeNamespace();
			codeUsing.Imports.Add(new System.CodeDom.CodeNamespaceImport("System"));
			codeNamespace = new System.CodeDom.CodeNamespace(this._Namespace);
			// Initialize TypeDeclaration private declaration
			codeTypeDeclaration = new System.CodeDom.CodeTypeDeclaration(this._RootName);
			
			switch(this._AspxType)
			{
				case suite4.net.WinForms2WebForms.AspxTypes.Page :
					codeTypeDeclaration.BaseTypes.Add(typeof(System.Web.UI.Page));
					break;
				case suite4.net.WinForms2WebForms.AspxTypes.UserControl :
					codeTypeDeclaration.BaseTypes.Add(typeof(System.Web.UI.UserControl));
					break;
			} // end switch(this._AspxType)
			
			this.GenerateFields(codeTypeDeclaration);
			this.BuildOnInitMethod(codeTypeDeclaration);
			this.BuildPageLoadMethod(codeTypeDeclaration);
			this.BuildInitializeComponentMethod(codeTypeDeclaration);
			codeNamespace.Types.Add(codeTypeDeclaration);
			codeCompileUnit.Namespaces.Add(codeUsing);
			codeCompileUnit.Namespaces.Add(codeNamespace);
			
			switch(this._SourceLanguage)
			{
				case suite4.net.WinForms2WebForms.SourceLanguages.C_Sharp :
					codeDomProvider = new Microsoft.CSharp.CSharpCodeProvider();
					break;
				case suite4.net.WinForms2WebForms.SourceLanguages.VbNet :
					codeDomProvider = new Microsoft.VisualBasic.VBCodeProvider();
					break;
			} // end switch(this._SourceLanguage)
			
			if(codeDomProvider != null)
			{
				// init codeGeneratorOptions
				codeGeneratorOptions = new System.CodeDom.Compiler.CodeGeneratorOptions();
				codeGeneratorOptions.BlankLinesBetweenMembers = false;
				codeGeneratorOptions.BracingStyle = "C";
				codeGeneratorOptions.ElseOnClosing = true;
				codeGeneratorOptions.IndentString = "\t";
				stringWriter = new System.IO.StringWriter();
				codeDomProvider.CreateGenerator().GenerateCodeFromCompileUnit(codeCompileUnit, stringWriter, codeGeneratorOptions);
				resultString = stringWriter.ToString();
				stringWriter.Close();
				return resultString;
			} // end if(codeDomProvider != null)
			
			return null;
		} // end private string BuildCodeBehind()
 public void SetUp()
 {
     this.codeNamespace = new System.CodeDom.CodeNamespace();
     this.testClassDeclaration = new System.CodeDom.CodeTypeDeclaration();
     this.typeMember = new System.CodeDom.CodeTypeMember();
     this.buildData = new NStub.CSharp.ObjectGeneration.BuildDataDictionary();
     this.mocks = new MockRepository();
     this.builderData = this.mocks.StrictMock<IBuilderData>();
     this.buildData.AddDataItem("CAT", "TheKey", builderData);
     this.setUpTearDownContext = this.mocks.StrictMock<NStub.CSharp.BuildContext.ISetupAndTearDownContext>();
     this.testObject = this.mocks.Stub<MemberBuildContextBase>(this.codeNamespace, this.testClassDeclaration, this.typeMember, this.buildData, this.setUpTearDownContext);
 }
 public virtual void GenerateCodeFromNamespace(System.CodeDom.CodeNamespace codeNamespace, System.IO.TextWriter writer, System.CodeDom.Compiler.CodeGeneratorOptions options)
 {
 }
Example #22
0
 protected void GenerateNamespaceImports(System.CodeDom.CodeNamespace e)
 {
     Contract.Requires(e != null);
     Contract.Requires(e.Imports != null);
 }
Example #23
0
 public static void Generate(string inputFileContent, System.CodeDom.CodeCompileUnit compileUnit, System.CodeDom.CodeNamespace mainNamespace, System.CodeDom.Compiler.CodeDomProvider codeProvider, System.Collections.Hashtable customDBProviders, GenerateOption option, string dataSetNamespace)
 {
 }
Example #24
0
 protected virtual new void GenerateNamespace(System.CodeDom.CodeNamespace e)
 {
     Contract.Requires(e != null);
     Contract.Requires(e.Comments != null);
 }
Example #25
0
 public static string Generate(string inputFileContent, System.CodeDom.CodeCompileUnit compileUnit, System.CodeDom.CodeNamespace mainNamespace, System.CodeDom.Compiler.CodeDomProvider codeProvider, GenerateOption option, string dataSetNamespace)
 {
 }
Example #26
0
 public XmlCodeExporter(System.CodeDom.CodeNamespace codeNamespace, System.CodeDom.CodeCompileUnit codeCompileUnit, System.CodeDom.Compiler.CodeDomProvider codeProvider, CodeGenerationOptions options, System.Collections.Hashtable mappings)
 {
 }
Example #27
0
		public static object UploadData(string url, string @namespace, string classname, 
			string methodname, object[] args, ArrayList al)
		{
			try
			{
				System.Net.WebClient wc = new System.Net.WebClient();
				//System.IO.Stream stream = wc.OpenRead(url + "?WSDL");
				System.IO.Stream stream = wc.OpenRead(url);
				System.Web.Services.Description.ServiceDescription sd = System.Web.Services.Description.ServiceDescription.Read(stream);
				System.Web.Services.Description.ServiceDescriptionImporter sdi = new System.Web.Services.Description.ServiceDescriptionImporter();
				sdi.AddServiceDescription(sd, string.Empty, string.Empty); //将sd描述导入到sdi中
				System.CodeDom.CodeNamespace cn = new System.CodeDom.CodeNamespace(@namespace);
				System.CodeDom.CodeCompileUnit ccu = new System.CodeDom.CodeCompileUnit();
				ccu.Namespaces.Add(cn);
				sdi.Import(cn, ccu);

				Microsoft.CSharp.CSharpCodeProvider csc = new Microsoft.CSharp.CSharpCodeProvider();
				System.CodeDom.Compiler.ICodeCompiler icc = csc.CreateCompiler();

				System.CodeDom.Compiler.CompilerParameters cplist = new System.CodeDom.Compiler.CompilerParameters();
				cplist.GenerateExecutable = false;
				cplist.GenerateInMemory = true;
				cplist.ReferencedAssemblies.Add("System.dll");
				cplist.ReferencedAssemblies.Add("System.XML.dll");
				cplist.ReferencedAssemblies.Add("System.Web.Services.dll");
				cplist.ReferencedAssemblies.Add("System.Data.dll");

				System.CodeDom.Compiler.CompilerResults cr = icc.CompileAssemblyFromDom(cplist, ccu);
				if (cr.Errors.HasErrors)
				{
					System.Text.StringBuilder sb = new System.Text.StringBuilder();
					foreach (System.CodeDom.Compiler.CompilerError ce in cr.Errors)
					{
						sb.Append(ce.ToString());
						sb.Append(System.Environment.NewLine);
					}
					throw new Exception(sb.ToString());
				}

				System.Reflection.Assembly assembly = cr.CompiledAssembly;
				Type t = assembly.GetType(@namespace + "." + classname, true, true);
				object obj = Activator.CreateInstance(t);

				ParameterModifier[] paramsModifer = new ParameterModifier[1];
				paramsModifer[0] = new ParameterModifier(args.Length);
				//paramsModifer[0][7] = true;

				object result = t.InvokeMember(methodname, BindingFlags.Default | BindingFlags.InvokeMethod, null,
					obj, args, paramsModifer, null, null);

				//al.Add(args[7]);
				return result;
			}
			catch (Exception ex)
			{
				WriteLog(ex.Message, EXCEPTION_LOG_TITLE);
				return null;
			}
		}
Example #28
0
 public XmlCodeExporter(System.CodeDom.CodeNamespace codeNamespace, System.CodeDom.CodeCompileUnit codeCompileUnit)
 {
 }
Example #29
0
 public virtual string ImportAnyElement(System.Xml.Schema.XmlSchemaAny any, bool mixed, System.Xml.Serialization.XmlSchemas schemas, System.Xml.Serialization.XmlSchemaImporter importer, System.CodeDom.CodeCompileUnit compileUnit, System.CodeDom.CodeNamespace mainNamespace, System.Xml.Serialization.CodeGenerationOptions options, System.CodeDom.Compiler.CodeDomProvider codeProvider)
 {
 }
 public SoapCodeExporter(System.CodeDom.CodeNamespace codeNamespace, System.CodeDom.CodeCompileUnit codeCompileUnit, CodeGenerationOptions options, System.Collections.Hashtable mappings)
 {
 }
Example #31
0
 void System.CodeDom.Compiler.ICodeGenerator.GenerateCodeFromNamespace(System.CodeDom.CodeNamespace e, TextWriter w, CodeGeneratorOptions o)
 {
 }
Example #32
0
 public static void Generate(string inputFileContent, System.CodeDom.CodeCompileUnit compileUnit, System.CodeDom.CodeNamespace mainNamespace, System.CodeDom.Compiler.CodeDomProvider codeProvider, System.Data.Common.DbProviderFactory specifiedFactory)
 {
 }
 // Constructors
 public SoapCodeExporter(System.CodeDom.CodeNamespace codeNamespace)
 {
 }
Example #34
0
 public static string Generate(string inputFileContent, System.CodeDom.CodeCompileUnit compileUnit, System.CodeDom.CodeNamespace mainNamespace, System.CodeDom.Compiler.CodeDomProvider codeProvider)
 {
 }
Example #35
0
 // Constructors
 public WebReference(System.Web.Services.Discovery.DiscoveryClientDocumentCollection documents, System.CodeDom.CodeNamespace proxyCode, string protocolName, string appSettingUrlKey, string appSettingBaseUrl)
 {
 }
Example #36
0
        public object CallWebService(WsDTO param)
        {
            string ErrWebService = string.Empty;

            System.Net.WebClient client = new System.Net.WebClient();

            // Connect To the web service

            System.IO.Stream stream = client.OpenRead(this.UrlWebService + "?wsdl");

            // Now read the WSDL file describing a service.

            var description = System.Web.Services.Description.ServiceDescription.Read(stream);

            ///// LOAD THE DOM /////////

            // Initialize a service description importer.

            var importer = new System.Web.Services.Description.ServiceDescriptionImporter();

            importer.ProtocolName = "Soap12"; // Use SOAP 1.2.

            importer.AddServiceDescription(description, null, null);

            // Generate a proxy client.

            importer.Style = System.Web.Services.Description.ServiceDescriptionImportStyle.Client;

            // Generate properties to represent primitive values.

            importer.CodeGenerationOptions = System.Xml.Serialization.CodeGenerationOptions.GenerateProperties;

            // Initialize a Code-DOM tree into which we will import the service.

            var nmspace = new System.CodeDom.CodeNamespace();

            var unit1 = new System.CodeDom.CodeCompileUnit();

            unit1.Namespaces.Add(nmspace);

            // Import the service into the Code-DOM tree. This creates proxy code that uses the service.

            var warning = importer.Import(nmspace, unit1);

            if (warning == 0) // If zero then we are good to go
            {
                // Generate the proxy code

                var provider1 = System.CodeDom.Compiler.CodeDomProvider.CreateProvider("CSharp");

                // Compile the assembly proxy with the appropriate references

                string[] assemblyReferences = new string[5] {
                    "System.dll", "System.Web.Services.dll", "System.Web.dll", "System.Xml.dll", "System.Data.dll"
                };

                var parms = new System.CodeDom.Compiler.CompilerParameters(assemblyReferences);

                var results = provider1.CompileAssemblyFromDom(parms, unit1);

                // Check For Errors

                if (results.Errors.Count > 0)
                {
                    foreach (System.CodeDom.Compiler.CompilerError oops in results.Errors)
                    {
                        ErrWebService += " " + oops.ErrorText;
                    }

                    throw new System.Exception(string.Format("Error al llamar a WS [{0}]", ErrWebService));
                }

                // Finally, Invoke the web service method

                object wsvcClass = results.CompiledAssembly.CreateInstance(param.ServiceName);

                var mi = wsvcClass.GetType().GetMethod(param.MethodName);

                return(mi.Invoke(wsvcClass, param.Args));
            }

            else
            {
                return(null);
            }
        }
Example #37
0
 public WebReference(System.Web.Services.Discovery.DiscoveryClientDocumentCollection documents, System.CodeDom.CodeNamespace proxyCode)
 {
 }