WinFrm应用程序调用WebService服务

关于WebService的创建、发布与部署等相关操作不再赘述,传送门如下:C# VS2019 WebService创建与发布,并部署到Windows Server 2012R

此篇记录一下客户端的调用,以便后续学习使用,不足之处请指出。

建立WinFrm应用程序

  • 搭建前台界面,如下图 ;

  • 添加服务引用(项目->添加服务引用->高级->添加Web引用->...,如图);

  • 创建公共类Global.cs,代码如下;
 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace WinFrmWebClient
{
class Global
{
// 实例化一个Web服务类
public static LocalHost.WebServiceOracleTest myWebService = new LocalHost.WebServiceOracleTest();
}
}
  • 核心代码。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace WinFrmWebClient
{
public partial class FrmMain : Form
{
public FrmMain()
{
InitializeComponent();
} private void FrmMain_Load(object sender, EventArgs e)
{
this.listBoxLogs.Items.Clear();
} /// <summary>
/// 检查数据库连接是否正常
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnCheckConnect_Click(object sender, EventArgs e)
{
try
{
bool b = Global.myWebService.CheckOraConnect();
if (b)
{
this.listBoxLogs.Items.Add("Oracle 数据库连接正常!");
}
else
{
this.listBoxLogs.Items.Add("Oracle 数据库连接失败!");
}
}
catch (Exception ex)
{
this.listBoxLogs.Items.Add("调用WebService失败,错误信息[" + ex.Message + "]");
}
} /// <summary>
/// Say Hello
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnSayHello_Click(object sender, EventArgs e)
{
try
{
this.listBoxLogs.Items.Add(Global.myWebService.HelloWorld());
}
catch (Exception ex)
{
this.listBoxLogs.Items.Add("调用WebService失败,错误信息[" + ex.Message + "]");
}
} /// <summary>
/// 显示当前时间对应的周别
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnShowWeek_Click(object sender, EventArgs e)
{
try
{
this.listBoxLogs.Items.Add("今天是2019年,第[" + Global.myWebService.GetWeek(DateTime.Now.ToString()) + "]周,请知悉!");
}
catch (Exception ex)
{
this.listBoxLogs.Items.Add("调用WebService失败,错误信息[" + ex.Message + "]");
}
}
}
}

实现效果

作者:Jeremy.Wu
  出处:https://www.cnblogs.com/jeremywucnblog/

  本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

C# - VS2019 WinFrm应用程序调用WebService服务的更多相关文章

  1. C#调用WebService服务(动态调用)

    原文:C#调用WebService服务(动态调用) 1 创建WebService using System; using System.Web.Services; namespace WebServi ...

  2. 问题:C#调webservice超时;结果:C#调用webservice服务超时

    C#调用WebService服务时,报错,The operation has timed out,意思是“操作超时”. 方法/步骤 首先修改服务端配置 WebService服务所在站点为服务端,它提供 ...

  3. 【Java EE 学习 80 下】【调用WebService服务的四种方式】【WebService中的注解】

    不考虑第三方框架,如果只使用JDK提供的API,那么可以使用三种方式调用WebService服务:另外还可以使用Ajax调用WebService服务. 预备工作:开启WebService服务,使用jd ...

  4. 使用ajax和urlconnection方式调用webservice服务

    <html> <head> <title>使用ajax方式调用webservice服务</title> <script> var xhr = ...

  5. ajax调用webservice服务

    ajax调用是 html方向调用的, 而sqlconnection是 java代码调用的,本质差不多 <html> <head> <title>通过ajax调用we ...

  6. sqlconnection 调用webservice服务

    package cn.itcast.service.urlconnection; import java.io.InputStream; import java.io.OutputStream; im ...

  7. cxf 调用 webservice服务时传递 服务器验证需要的用户名密码

    cxf通过wsdl2java生成客户端调用webservice时,如果服务器端需要通过用户名和密码验证,则客户端必须传递验证所必须的用户名和密码,刚开始想通过url传递用户名和密码,于是在wsdl文件 ...

  8. WindowsForm应用程序调用WebService

    本文原创,如需转载,请标明源地址,谢谢合作!http://blog.csdn.net/sue_1989/article/details/6597078 本文的编写IDE为VSTS2008和.NET F ...

  9. C++调用WebService服务问题总结

    近期接手一部分C++研发工作,同时与.NET开发小组进行软件功能协作,于是需要调用.NET WebService服务,已完成数据的网络通讯业务功能:结束之余,将手头碰到的问题总结罗列如下: C++如何 ...

随机推荐

  1. 【限时免费】从入门到实战,5节课玩转Kafka!赢音箱、书籍好礼!

    欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...

  2. 新一代数据安全的制胜法宝-UBA

    [摘要]在入侵防御领域,运用数据分析的方法保护数据的技术其实没有什么新的东西,比如防火墙-分析数据包的内容以及其他的元数据,如IP地址,从增长的数据条目中检测和阻断攻击者:防病毒软件不断的扫描文件系统 ...

  3. Python中的UDP协议应用之飞秋应用-单IP版本

    UDP协议是无连接的.不稳定的网络通信协议. 通过使用飞秋端口(2425),以及模拟飞秋消息格式实现使用UDP协议对飞秋进行通信. 飞秋通信格式: '1:1000:66:%s:32:%s' 以冒号分割 ...

  4. Sql Server连表查询字段为null

    这是一个坑,并且是有毒的坑. 一不小心我就掉进了这个坑里面,费了好大的力气这才从坑里面爬出来. 话不多说,开始吹BB啦. 一.简单说说遇到的问题: 连表查询,一对多. 出现 int,  smallda ...

  5. hibernate绑定session

    session session是一种单实例对象 简单说就是自己用 别人不能用.在一些项目中很多人一起来操作 所以我们可以把session与我们的本地线程一起绑定,本地线程的特点就是执行一次 从创建到销 ...

  6. mac查看开关机记录-last命令

    命令 last | grep reboot (查看开机时间记录) last | grep shutdown (查看关机时间记录) /var/log/messages日志中查询reboot(系统重启) ...

  7. [TimLinux] Python Django与WSGI的简介

    1. Web应用 web应用的最原始的访问流程: 客户端发送HTTP请求: 服务端接收到请求,生成一个HTML文档: 服务端将构造HTTP响应,包含:响应头(响应码.键值对).响应体(HTML文档) ...

  8. selenium处理弹窗

    处理登录弹窗:https://www.cnblogs.com/TD1900/p/11938573.html #定位弹窗 ale = driver.switch_to.alert #处理方式 ale.a ...

  9. Windows基础

    目录 一. 硬件概述 二.常见硬件设备 三.文件系统 四. 文件类型和DOS命令 五 .批处理 六 .TCP/IP概述和Windows配置 七.网络设置.DNS.邮件★ 一. 硬件概述 1.计算机的发 ...

  10. Sample Preparation by Easy Extraction and Digestion (SPEED) - A Universal, Rapid, and Detergent-free Protocol for Proteomics based on Acid Extraction(一种使用强酸的蛋白质提取方法SPEED,普适,快速,无需去垢剂)-解读人:李思奇

    期刊名:Mol Cell Proteomics 发表时间:(2019年12月) IF:4.828 单位:德国Robert Koch 研究所 物种:多种 技术:新蛋白提取和酶解方法 一. 概述: 本文设 ...