当前位置: 首页 > news >正文

厂字形网页布局网站建设工程合同应当采用

厂字形网页布局网站,建设工程合同应当采用,浙江建设网证书查询,专业外贸网站建设 诚信 青岛先学生成#xff0c;再看调用哦 【超细完整版】C# 获取WebService所有方法并调用 【调用篇】 目的 支持通过web url (自适应“?wsdl”的有无) 生成.wsdl文件 和 .dll文件 实现 将通过一个类的三部分来实现这些功能 获取url中的ClassName #xff08;GetClassNameFromUrl再看调用哦 【超细完整版】C# 获取WebService所有方法并调用 【调用篇】 目的 支持通过web url (自适应“?wsdl”的有无) 生成.wsdl文件 和 .dll文件 实现 将通过一个类的三部分来实现这些功能 获取url中的ClassName GetClassNameFromUrl转换为WSDL文件 UrlToWsdlFile转换为DLL文件 UrlToDllFile 创建一个新类 类名为 WebServiceHelper.cs /// summary/// 动态调用WebService支持SaopHeader/// /summarypublic class WebServiceHelper{}并在该类实现下述方法 获取url中的ClassName #region 获取url中的ClassName /// summary /// 获取WebService的类名 /// /summary /// param namewsUrlWebService地址/param /// returns返回WebService的类名/returns public static string GetClassNameFromUrl(string wsUrl) {string result string.Empty;if (!wsUrl.EndsWith(?wsdl, StringComparison.CurrentCultureIgnoreCase)){wsUrl wsUrl ?wsdl;}XmlDocument doc new XmlDocument();doc.Load(wsUrl);try{result doc.GetElementsByTagName(wsdl:service)[0].Attributes[0].Value;}catch (Exception err){return string.Empty;}return result; } #endregion转换为WSDL文件 #region 生成WSDLpublic static void UrlToWsdlFile(string url, string savePath, string outName ){string className string.Empty;string FullFileName string.Empty;className GetClassNameFromUrl(url);if (outName ){outName className .wsdl;}else{if (!outName.EndsWith(.wsdl, StringComparison.CurrentCultureIgnoreCase)){outName outName .wsdl;}}if (!url.EndsWith(?wsdl, StringComparison.CurrentCultureIgnoreCase)){url url ?wsdl;}FullFileName savePath \\ outName;WebClient wc new WebClient();if (!System.IO.Directory.Exists(savePath)){System.IO.Directory.CreateDirectory(savePath);//不存在就创建文件夹}wc.DownloadFile(url, FullFileName);}#endregion转换为DLL文件 #region 生成DLLpublic static CompilerResults UrlToDllFile(string url, string namespace ) {string className string.Empty;className GetClassNameFromUrl(url);if (!url.EndsWith(?wsdl, StringComparison.CurrentCultureIgnoreCase)){url url ?wsdl;}WebClient web new WebClient();Stream stream web.OpenRead(url);//创建和格式化 WSDL 文档。 ServiceDescription description ServiceDescription.Read(stream);CompilerResults compiler CreatDll(className, description, namespace);return compiler; }private static CompilerResults CreatDll(string className, ServiceDescription description, string namespace ) {try{// 3. 创建客户端代理代理类。ServiceDescriptionImporter importer new ServiceDescriptionImporter();// 指定访问协议。importer.ProtocolName Soap;// 生成客户端代理。importer.Style ServiceDescriptionImportStyle.Client;importer.CodeGenerationOptions CodeGenerationOptions.GenerateProperties | CodeGenerationOptions.GenerateNewAsync;// 添加 WSDL 文档。importer.AddServiceDescription(description, null, null);// 4. 使用 CodeDom 编译客户端代理类。// 为代理类添加命名空间缺省为全局空间。CodeNamespace nmspace new CodeNamespace();nmspace.Name namespace;CodeCompileUnit unit new CodeCompileUnit();unit.Namespaces.Add(nmspace);ServiceDescriptionImportWarnings warning importer.Import(nmspace, unit);CodeDomProvider provider CodeDomProvider.CreateProvider(CSharp);CompilerParameters parameter new CompilerParameters();parameter.GenerateExecutable false;parameter.GenerateInMemory true;//在内存中生成输出// 可以指定你所需的任何文件名。parameter.OutputAssembly AppDomain.CurrentDomain.BaseDirectory dll\\ className .dll;parameter.ReferencedAssemblies.Add(System.dll);parameter.ReferencedAssemblies.Add(System.XML.dll);parameter.ReferencedAssemblies.Add(System.Web.Services.dll);parameter.ReferencedAssemblies.Add(System.Data.dll);// 生成dll文件并会把WebService信息写入到dll里面CompilerResults result provider.CompileAssemblyFromDom(parameter, unit);if (result.Errors.HasErrors){System.Text.StringBuilder sb new System.Text.StringBuilder();foreach (System.CodeDom.Compiler.CompilerError ce in result.Errors){sb.Append(ce.ToString());sb.Append(System.Environment.NewLine);}throw new Exception(sb.ToString());}return result;}catch (Exception err){MessageBox.Show(err.Message, Error);return null;} } #endregion应用 个人示例实际根据自己需求调整 ; 以下为窗体按钮事件 private void bt_generate_dll_Click(object sender, EventArgs e) {try{WebServiceHelper.UrlToDllFile(tb_webLink.Text);if (MessageBox.Show(The dll is generated successfully. Do you want to open the file path?, notice, MessageBoxButtons.YesNo) DialogResult.Yes)openPath(dll);}catch (Exception err){MessageBox.Show(err.Message, Error);} } private void openPath(string type) {if (string.IsNullOrEmpty(type)) return;string key string.Empty;key type.Equals(defaultKey) ? wsdlPathKey : dllPathKey;//get Configuration objectConfiguration config ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);//get value by keystring path config.AppSettings.Settings[key].Value;System.Diagnostics.Process.Start(explorer.exe, path); } 老规矩点赞关注走一波
http://www.w-s-a.com/news/937003/

相关文章:

  • 做网站有的浏览器怎么做网站网站赚钱
  • 织梦 做网站 教程百度登录个人中心官网
  • ftp怎么修改网站wordpress分享积分
  • 营销策划方案的步骤西安关键词优化软件
  • 南宁自己的网站移动互联网技术学什么
  • 2017湖北建设教育协会网站自己接单做网站
  • 定制网站建设制作h5网站要多久
  • 泰安中呼网站建设有限公司 概况个人网站的设计与实现参考文献
  • 圣诞节网站怎么做怎么获取网站的图片
  • 想找个人做网站音乐网站建设教程视频教程
  • 网站收录一键提交阿里巴巴做网站多少钱
  • 怎么做网站投放广告商务网站建设实训报告
  • 服装代销的网站源码国内电子商务网站有哪些
  • qq空间怎么做网站做企业平台的网站有哪些
  • 网站的优缺点wordpress手机适配模板中文
  • 福州网站建设H5广告公司简介简短
  • 网站404页面的作用app开发郑州
  • 亚马逊中国网站建设目标网站建设的策划
  • 林州网站建设服务徐州网站建设
  • 如何检测网站死链景德镇网站建设哪家好
  • 旅游网站开发目标天津专业做网站公司
  • 名者观看网站快手小程序
  • 网络架构扁平化windows优化大师好不好
  • 安康养老院收费价格表兰州seo整站优化服务商
  • 网站开发技术方案模板无锡网站建设推荐
  • 自助建站系统注册三维家3d设计软件免费
  • 做seo网站标题重要吗郑州众诚建设监理有限公司网站
  • 建设网站南沙区百度关键词推广怎么做
  • 网站建设公司做销售前景好不好石家庄外贸网站制作
  • windows2008做网站网站首页打开速度