.Net webservice动态调用

直接贴代码吧

public class PmsService
   {
       /// <summary>
       /// pms接口
       /// </summary>
       /// <param name="invokeBaseData">接口传递数据类</param>
       /// <returns> </returns>
       public string InvokeService(InvokeBaseData invokeBaseData)
       {
           string result = "", tempUrl = "", content = "";
           tempUrl = "http://115.238.104.156:5031/XRself/HepInterface_Service.asmx/WebConnector";
           content = "v=" + invokeBaseData.Version + "&n=" + invokeBaseData.Number +
               "&f=" + invokeBaseData.Function + "&q=" + invokeBaseData.QueryString + 
               "&c=" + invokeBaseData.ClientInfo + "&s=" + invokeBaseData.State;
           StreamReader myStreamReader;
           var bs = Encoding.UTF8.GetBytes(content);
           var request = (HttpWebRequest)HttpWebRequest.Create(tempUrl);
           request.Method = "POST";
           request.ContentType = "application/x-www-form-urlencoded";
           request.ContentLength = bs.Length;
           try
           {
               using (Stream reqStream = request.GetRequestStream())
               {
                   reqStream.Write(bs, 0, bs.Length);
                   reqStream.Close();
               }
               var wr = request.GetResponse();
               var myResponseStream = wr.GetResponseStream();
               myStreamReader = new StreamReader(myResponseStream);
               result = myStreamReader.ReadToEnd();
           }
           catch (WebException ce)
           {
               var res = (HttpWebResponse)ce.Response;
               try
               {
                   myStreamReader = new StreamReader(res.GetResponseStream());
                   result = myStreamReader.ReadToEnd();
               }
               catch (Exception e)
               {
                   result = ce.Message;
               }
           }
           return result;
       }
   }

想交流qq联系:1576410833

posted @   Seaurl  阅读(213)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述
历史上的今天:
2012-06-20 self.location.href的具体用法(转)
点击右上角即可分享
微信分享提示